无法显示表格详细信息

时间:2012-01-17 02:10:25

标签: uitableview uiviewcontroller pushviewcontroller nsindexpath

我发誓我已经看了六个教​​程,我无法弄清楚我做错了什么。我有一个通过IB嵌套在UIView中的tableview,并且表格都被格式化并正确填充。我只是无法让它向我展示细节屏幕。该表识别出水龙头,并且该行已被选中,但是......该行保持选中状态。然后,绝对没有任何反应。我可以选择具有相同结果的其他行,但过去没有任何事情发生过。我可以移入和移出视图,并在整个应用程序中具有完整功能。我甚至可以滚动tableview,但我永远无法进入单元格细节屏幕。我在IB中将所有必要的部分联系在一起。

这是我的详细视图代码:

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {

    //Get the selected cell detail
    NSString *theString = [secondview objectAtIndex:indexPath.row];

    celldetails *dvController = [[celldetails alloc] initWithNibName:@"celldetails" bundle:nil];
    dvController.cellString = theString;

    [self.navigationController pushViewController:dvController animated:YES];
}

我已尝试过“bundle:nil”和“bundle:[NSBundle mainBundle]”,但都没有产生所需的结果。有人有建议吗?

1 个答案:

答案 0 :(得分:0)

如果pushViewController:animated:没有做任何事情,那么navigationController可能是nil,但是由于UIViewController实例已发送到pushViewController:animated:,因此它确实有效将显示某种视觉变化(除非视图相同且您不使用动画)。尝试在NSLog(@"blah");实施中添加didSelectRowAtIndexPath:行,以确保它已被调用。或者在该方法中使用断点。

一捆nil很好。如果找不到.xib,那么你会收到调试消息,所以它找到了.xib。如果您加载了.xib但未设置view个商店,那么.xib甚至会设置有效的view个套餐,因为应用会崩溃。