我对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
}
请帮我填写其他内容。真的很感激你的时间!
答案 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