TableViewCellController

TableViewCellController

我有一个带有静态单元格的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.delegate访问对象。

初始化时,将值从UITableViewController传递到TableViewCellController或从TableViewCellController访问该值的最佳方法是什么?

谢谢

最佳答案

所以这就是我的方法。我在父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;
    }
}

10-08 05:51