我有custom cell
个textfield
作为子视图。将单元格设置为textfield
的委托是否合法?
我想将单元格设置为委托,因为它是父视图,但是当我这样做时,应用程序崩溃了。我想这是因为table view dequeue cells
,也许这就是委托引用在两者之间丢失的原因。
所以,我尝试在cellForRowAtIndexPath
中设置委托,以确保每次都设置新的委托,但它仍然不起作用。
我是否真的必须提升级别并让tableview controller
成为单元格子视图的代理?或者我错过了其他什么?
崩溃报告输出:
>libobjc.A.dylib`objc_msgSend:
>
0x32ed4f78: ldr r3, [r4, #8]
>
initWithStyle我有
- (id)initWithStyle:(UITableViewCellStyle)style reuseIdentifier:(NSString *)reuseIdentifier type: (NSString *)cellType
{
self = [super initWithStyle:style reuseIdentifier:reuseIdentifier];
if (self) {
// Initialization code
NSArray *nibArray = [[NSBundle mainBundle] loadNibNamed:@"Custom Cell" owner:self options:nil];
self = [nibArray lastObject];
self.cellType = [NSString stringWithString:cellType];
self.contentText.autoresizingMask = UIViewAutoresizingNone;
self.detailLabel.autoresizingMask = UIViewAutoresizingNone;
self.contentText.delegate = self;
}
return self;
}
答案 0 :(得分:0)
将自定义单元格作为单元格中文本字段的委托不是问题。表视图将在需要时重用某些单元格,但不会影响任何内容。我猜你错过了其他的东西。如果您发布崩溃时遇到的错误以及代码的相应部分,也许我可以提供帮助。
答案 1 :(得分:0)
请勿在{{1}}
中设置delegate
在cellForRowAtIndexPath.
子类中,在UITableViewCell
方法中添加UITextField
,然后将initWithStyle
设置为delegate
。