UITableView,UITableViewCell子类的奇怪行为

时间:2012-06-18 19:36:25

标签: ios uitableview

我在使用UITableView和UITableViewCell子类时遇到了一些问题。

我有一个带有三行的UITableView,在UIViewController中作为模型视图控制器呈现,就像电子邮件编写器一样。第1行表示收件人,第2行表示主题,第3行表示电子邮件正文。对于每一行,我都有一个自定义的UITableView子类。

在我的viewDidLoad方法中,我得到了MessageAddressCell,MessageEditableSubjectCell和MessageEditableBodyCell。

- (void) viewDidLoad {
    _toCell = [(MessageAddressCell *)[self getMessageToCell] retain];
    _subjectCell = [(MessageEditableSubjectCell *)[self getMessageSubjectCell] retain];
    _editableBodyCell = [(MessageEditableBodyCell *)[self getMessageEditableBodyCell] retain];
}

在视图控制器中,我定义了普通的表视图数据源/委托方法。

- (NSInteger) numberOfSectionsInTableView:(UITableView *)tableView {
    return 1;
}

- (NSInteger) tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
    return 3;
}

- (UITableViewCell *) tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
    switch (indexPath.row) {
        case 0: return _toCell;
        case 1: return _subjectCell;
        case 2: return _editableBodyCell;
        default: return nil;
    }
}

- (void) tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
    NSLog(@"viewController tableView:didSelectRowAtIndexPath: entered method.");
}

我有方法'tableView:willSelectRowAtIndexPath:'返回传入的indexPath。

当我在主题表视图单元格和主体表视图单元格之间点击时,我从未看到输入单元格的日志或执行的断点。 (为该方法设置断点。)

在tableView中返回我的自定义UITableView单元格之前是否需要设置一些属性:cellForRowAtIndexPath:?

MessageAddressCell和MessageEditableSubjectCell都有一个UITextField成为第一个响应者。 MessageEditableBodyCell有一个WebKitHTMLEditor类型的实例,其中包含UIToolbar和UIWebView。

0 个答案:

没有答案
相关问题