使用xib文件和自定义构造函数自定义UITableViewCell

时间:2013-10-22 20:03:46

标签: ios objective-c uitableview xib

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

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

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

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

我不想使用这些属性来传递这些参数。

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

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

我该如何混合这些? :)

2 个答案:

答案 0 :(得分: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

答案 1 :(得分:1)

将始终使用initWithCoder:初始化从xib取消归档的视图,您必须覆盖该方法以从笔尖初始化自定义视图。

Nib file docs