我想知道使用哪种技巧将视图控制器“不推送”到导航控制器堆栈(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 链接到情节提要的选项卡栏控制器。
难道没有别的办法了吗?