在导航堆栈中间重定向到新视图控制器

时间:2014-11-03 08:37:01

标签: ios xcode uiviewcontroller uinavigationcontroller uinavigationitem

我对iOS中的导航视图控制器和堆栈相当新。请帮助我,尝试搜索很长时间无法找到相关内容。

我有一个LoginViewController,一个用于侧边菜单操作的SWRevealViewController,一个FirstViewController(导航堆栈中的第一个)和一个SecondViewController(导航堆栈中的第二个)。

我必须在LoginViewController中执行以下操作,假设login和found是两个布尔变量:

if (login && !found) {
//redirect to FirstViewController : the following works
[self presentViewController:swReveal animated:NO completion:nil];
}
else if (login && found) {
//redirect to SecondViewController
}

请帮我填写其他内容。真的很感激你的时间!

1 个答案:

答案 0 :(得分:0)

因此,基于我从您的评论中理解的内容,FirstViewController是TableViewController的子类,SecondViewController是DetailView。

因此,基于此,#34;重定向"的最佳方法到DetailView(SecondViewController),将在Storyboard上创建一个segue,然后在加载FirstViewController后以编程方式调用segue(在其viewDidLoad中)

在这两种情况下,您将首先显示FirstViewController,然后根据if语句,您将保留或转到SecondViewController。

所以第一步:从故事板中创建segue,并给它一个标识符。

第二步:使用以下命令在加载FirstViewController时(当然,if语句有效)以编程方式执行该segue:

[self performSegueWithIdentifier: @"MySegue" sender: self];

有关该主题的更多信息:

Alternative ways to push view controllers with storyboard programmatically

Creating a segue programmatically