连接 UITableView + UITableView

Posted

技术标签:

【中文标题】连接 UITableView + UITableView【英文标题】:connect UITableView + UITableView 【发布时间】:2010-04-27 16:36:39 【问题描述】:

现在我有一个索引 UITableView 进入详细视图,但我希望它转到另一个 UITableView 然后是详细视图。

我的代码是这样的:

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

displyAnnController *anController = [[displyAnnController alloc] initWithNibName:@"AnnView" bundle:[NSBundle mainBundle]];

DetailViewController *dvController = [[DetailViewController alloc] initWithStyle:UITableViewStyleGrouped];

switch (indexPath.row) 
    case 0:
        [self.navigationController pushViewController:anController animated:YES];
        [anController release];
        anController = nil;
        break;
    case 1:
        [self.navigationController pushViewController:dvController animated:YES];
        [dvController release];
        dvController = nil;
        break;
    default:
        break;
`

当我在模拟器中按下索引为 0 的单元格时,程序崩溃了!

有什么问题?请帮助我..


不,我没有覆盖-initWithNibName,我只是在这里以相同的方式使用它,但推送到 ControlView 而不是 TableView。此外,调试控制台中没有错误。 我试图在切换块之后释放控制器,但程序仍然崩溃:( 不管怎样,我写的时候就可以了:

displyAnnController *anController = [[displyAnnController alloc] initWithStyle:UITableViewStyleGrouped]];

而不是:

displyAnnController *anController = [[displyAnnController alloc] initWithNibName:@"AnnView" bundle:[NSBundle mainBundle]]

我暂时接受这个只是为了完成我的工作!但我希望找到任何帮助示例,因为不需要作为组。

感谢大家的帮助和建议。

【问题讨论】:

【参考方案1】:

查看调试控制台 (Cmd-Shift-R) 并查看错误是什么。

您是否覆盖displyAnnController 上的-initWithNibName 消息?还是-viewDidLoad 消息?

您也有内存泄漏。你总是+alloc 两个控制器,但只有-release 其中一个。不要+alloc您的控制器,除非您要实际使用它。

【讨论】:

是的,在 switch 块之后释放你的视图控制器。以及为什么不在此视图控制器的 -viewDidLoad 中创建视图控制器,将它们添加到数组中并使用 objectAtIndex:row 在 didSelectRowAtIndexPath: 方法中将相应的视图控制器推送到导航堆栈上。正如 Branon 所说,检查您的控制台,了解实际出了什么问题。【参考方案2】:

我认为你的应用程序崩溃了,因为首先你释放了视图,然后你将它设为 nil。如果它被释放一次,那么它没有获得使其为零的引用。尝试一次。它可能会工作。

【讨论】:

以上是关于连接 UITableView + UITableView的主要内容,如果未能解决你的问题,请参考以下文章

iOS开发UI篇—UITableview控件使用小结

刷新 UITableView 而不刷新节标题

UINavigationController 如何成为 UITableView 的 navigationController?

iOS 8 UITableView 背景颜色外观

以编程方式添加带有自动布局的 UITableView

UIViewController 中的 UISearchController