我有一个带有静态单元格的UITableViewController,在故事板(Xcode 4)中创建。
对于每个单元格,我分配了一个TableViewCellController以获得自定义选择器(http://www.wannabegeek.com/?p=104,以及此处使用的示例:http://timroadley.com/2012/02/26/core-data-basics-part-6-core-data-uipickerview/)。
在我的UITableViewController中,我创建了一个新对象,我希望TableViewCellController可以访问它。
UITableViewController被设置为TableViewCellController的委托,但是在TableViewCellController的init方法(自定义initializeInputView,从initWithCoder调用)中,委托尚未定义,因此我无法使用self访问该对象。委派。
在初始化时,将该值从UITableViewController传递给TableViewCellController或从TableViewCellController访问它的最佳方法是什么?
由于
答案 0 :(得分:2)
所以这就是我做的方式。我在父UITableView中使用了willDisplayCell,并转换静态单元控制器的类型,以便访问它的dateValue属性并初始化它。
- (void)tableView:(UITableView *)tableView willDisplayCell:(UITableViewCell *)cell forRowAtIndexPath:(NSIndexPath *)indexPath
{
switch (indexPath.section) {
case 0:
switch (indexPath.row) {
case 0:
((DateInputCellController *) cell).dateValue = self.event.date;
break;
case 1:
...
break;
default:
break;
}
break;
default:
break;
}
}