2

关于自定义 UITableViewCell 的一个问题。

我想要一个带有 xib 文件的 UICustomTableViewCell 来设计这个单元格。

当我创建我的单元格时,我还会使用自定义构造函数来传递一些参数。例如:

initWithMyParamterA:(NSString*) aParameterA andParameterB:(NSString*) aParameterB;

我宁愿不使用属性来传递这个参数。

那么,我怎样才能一起实现这个构造函数loadNibName(加载 xib 文件)和默认构造函数:

initWithStyle:(UITableViewCellStyle)style reuseIdentifier:(NSString *)reuseIdentifier

我怎样才能混合这些?:)

4

2 回答 2

1

我已经按类别扩展了 UIView 类,并添加了一种使用类名创建 XIB 的方法

+ (id) viewWithDefaultXib
{
    NSArray *topLevelObjects = [[NSBundle mainBundle] loadNibNamed:NSStringFromClass([self class]) owner:self options:nil];
return [topLevelObjects count] ? [topLevelObjects objectAtIndex:0] : nil;
}

您可以在类中定义以下方法来初始化对象。- (id) initWithCoder:(NSCoder *)aCoder 更多信息在 https://developer.apple.com/library/ios/documentation/cocoa/reference/foundation/Protocols/NSCoding_Protocol/Reference/Reference.html

于 2013-10-22T20:24:43.947 回答
1

从 xib 未归档的视图将始终使用initWithCoder:您必须覆盖该方法以从 nib 初始化自定义视图进行初始化。

笔尖文件文档

于 2013-10-22T20:32:55.980 回答