使用导航控制器推送新的视图控制器

时间:2013-10-03 17:07:47

标签: ios

所以我创建了一个新的视图控制器,它有一个名为DescriptionViewController的Custom类。 从我didSelectRowAtIndexPath内的当前视图控制器,我使用此代码:

-(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
    [tableView deselectRowAtIndexPath:indexPath animated:YES];

    DescriptionViewController *descriptionViewController = [[DescriptionViewController alloc] initWithNibName:@"DescriptionViewController" bundle:nil];
    [self.navigationController pushViewController:descriptionViewController animated:YES];
}

但是当我点击一个单元格时没有任何反应。还有什么我需要做的吗?

2 个答案:

答案 0 :(得分:2)

如果你输入一个断点并且它在didSelectRowAtIndexPath中停止,我的猜测是你的self.navigationController是nil。

如果您使用的是故事板,请确保您的入口点是UINavigationController,而不是UIViewController。

如果您通过模态转换加载此视图控制器,请确保使用此视图控制器作为根视图推送导航控制器。

答案 1 :(得分:1)

在故事板中选择你的viewcontroller,然后在编辑器>嵌入>导航控制器中,而不是initWithNibName尝试init