现在我已经让我的用户完成了UIPageViewController
的入职,然后点按“完成”按钮转到我UITabBarController
的个人资料标签。但是,配置文件选项卡位于索引[2],下面的代码将我带到索引[0]。
UIViewController *vc = [self.storyboard instantiateViewControllerWithIdentifier:@"tabHostController"];
[self presentViewController:vc animated:YES completion:nil];
点击UITabBarController
中的“完成”按钮后,如何在特定索引[2]上显示UIPageViewController
?
答案 0 :(得分:1)
您可以更改 TabBarController 的selectedIndex
属性,使其打开您想要的索引
UITabBarController *vc = [self.storyboard instantiateViewControllerWithIdentifier:@"tabHostController"];
vc.selectedIndex = 2; // or [vc setSelectedIndex:2];
[self presentViewController:vc animated:YES completion:nil];
答案 1 :(得分:1)
我在我的应用程序中使用了以下内容,我必须在其中显示第3个选项卡。 TabBarController 的viewDidLoad
中只有一行代码:
[self setSelectedIndex:2];
如果你必须在开始时只显示第3个标签,即在Onboarding之后,对于其余的启动,你必须在第3个标签的viewDidLoad
的UIViewController中显示第1个标签,指定一个布尔值NSUserDefault
:
[[NSUserDefaults standardUserDefaults]setBool:YES forKey:@"loadThirdTab"];
现在,您对{strong> TabBarController 的viewDidLoad
将是:
if( [[NSUserDefaults standardUserDefaults]objectForKey:@"loadThirdTab"]] != nil &&[[NSUserDefaults standardUserDefaults]boolForKey:@"loadThirdTab"])
[self setSelectedIndex:0];
else
[self setSelectedIndex:2];