在UITableView行选择上移动到另一个视图

时间:2011-03-08 11:38:01

标签: iphone ios uitableview

如何从当前视图移动到另一个视图?我当前的视图是viewcontroller,我想移动另一个视图控制器。这是我的代码..

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
    SecondView *secondView = [[SecondView alloc] initWithNibName:@"second" bundle:[NSBundle  mainBundle]];
    [self.navigationController pushViewController:secondView animated:YES];
}

我正在将xib文件用于另一个视图。

4 个答案:

答案 0 :(得分:1)

确保nib文件名并设置bundle:nil

好的,请确保在第二个viewcontroller的界面构建器中,正确挂钩相应的类。

请清理所有目标,然后构建并运行该应用程序。

答案 1 :(得分:1)

您可能会混淆视图和查看控制器。视图控制器管理视图,但它绝对不是视图,反之亦然。如果你的“SecondView”实际上是一个视图控制器(即它继承自UIViewController),那么你的代码就是正确的。

答案 2 :(得分:0)

最简单的解决方案可能是使用UINavigationController,因为您似乎正在尝试,因为这将允许您根据需要将视图推送到“堆栈”,并且还将自动处理删除视图/添加导航后退按钮等

那就是说,我建议您阅读上面的类引用,因为您的代码存在一些问题。 (例如,在添加视图控制器之后,你没有做[secondView release];。)我认为“secondView”也是一个视图控制器,而不仅仅是一个视图? (您将控制器推入堆栈,而不是视图。)

答案 3 :(得分:0)

一些注意事项:

  • 你正在泄漏secondView,自动释放它
  • bundle可能是nil
  • 代码有什么问题?