在我的项目中,一些UITableViewCell
有一些复杂的子视图结构和手势动作,所以我决定使用一层"单元控制器"对象(NSObject
的子类)来管理单元格和单元格层手势,以及在xib文件中绘制单元格。
现在当我从笔尖加载单元格并且单元控制器作为其所有者(xib已正确设置)时,我发现插座没有连接。为什么呢?
或者,当加载nib并设置出口时,是否有任何在所有者对象上调用的方法?
Nib加载如下:
cell = [[NSBundle mainBundle] loadNibNamed:@"HistoryCellActive"
owner:self
options:nil][0];
答案 0 :(得分:1)
nib加载基础结构向从nib存档重新创建的每个对象发送awakeFromNib消息。当一个对象收到一个awakeFromNib消息时,它保证已经建立了所有的插座和动作连接。
您可以尝试覆盖HistoryCellActive实现文件中的awakeFromNib方法并在此处放置断点。如果单元格xib文件正确,则调试器会在此断点处停止,您可以检查所有单元格的出口。如果不是那么你必须检查xib是否有错误。
别忘了给[super awakeFromNib]打电话;在awakeFromNib实现的开始。