【发布时间】:2012-05-06 19:55:36
【问题描述】:
我想知道使用哪种技巧将视图控制器“不推送”到导航控制器堆栈 (iOS)
我有这个:
如果用户未登录,则显示视图 A 然后显示 B
如果用户已登录,则显示 B
当我使用情节提要时,如果用户已登录,我会使用 performSegue,因此他直接转到 B。但是使用此方法,导航控制器会在堆栈中推送视图 A。
我正在考虑在某个空白处弹出一个堆栈级别(但我不知道该怎么做)。
我也在考虑不要将视图推送到导航控制器堆栈中(但我不知道该怎么做)。
谢谢
更新:
我试过这个:
//The view B
TabBarMain* mainViewController = [[TabBarMain alloc] init];
//If already logged in
if([username length] == 0)
{
NSArray *viewControllers = [NSArray arrayWithObject:mainViewController];
[self.navigationController setViewControllers:viewControllers animated:NO];
}
这段代码的问题是它显示了一个黑屏(不会崩溃)。似乎我需要初始化一些东西,而我的 TabBarMain.m 中什么都没有,我不知道在里面写什么。此 TabBarMain 链接到情节提要的 Tab Bar Controller。
没有别的办法吗?
【问题讨论】:
标签: objective-c ios uinavigationcontroller stack storyboard