繁体   English   中英

iOS推视图控制器不工作

[英]iOS pushing view controller not working

我有一个uitabbarcontroller设置为窗口的根视图。 标签栏中的一个标签设置为uitableviewcontroller的子类。 我正在尝试做的是在触摸其中一行时显示详细信息视图,因此我实现了

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

if (!detailViewController) {        
detailViewController = [[ItemDetailViewController alloc] init]; 

}   
[detailViewController setEditingArray:   
[list objectAtIndex:[indexPath row]]];  
[[self navigationController] pushViewController:detailViewController animated:YES];

}

在我的表控制器中,但是当我选择行时,我的详细视图不会弹出。我添加了nslog以查看该函数是否触发 - 但确实如此,但我的详细视图仍未显示。 有任何想法吗? 谢谢。

你没有导航控制器( [self navigationController]返回nil )。 而不是将表视图控制器作为选项卡的根,使选项卡的根成为包含表视图控制器的导航控制器。 您现在可以从表视图控制器中推送详细控制器。

tableViewController应放在NavigationController 我猜你在标签栏里面创建了tableView

TableViewControllerSubclass* table = [[TableViewControllerSubclass alloc] init];

UINavigationController* tableNav = [[UINavigationController alloc] initWithRootViewController:table];

mainController = [[UITabBarController alloc] init];
mainController.viewControllers = [NSArray arrayWithObjects:tableNav,..., nil];

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM