如何在 UITabBarController 中切换选项卡?
我有一个从 RootViewController 以模态方式呈现的 UITabBarController:
stvTabBarController = [[UITabBarController alloc] init];
stvTabBarController.delegate = self;
stvTabBarController.viewControllers = [NSArray arrayWithObjects:stvNavController, scheduleNavController, nil];
stvTabBarController.selectedViewController = stvNavController;
[self presentModalViewController:stvTabBarController animated:YES];
如何从 stvNavController 切换选项卡?我不能这样做:
self.tabBarController.selectedIndex = 3;
因为我没有对 stvNavController 中的 tabBarController 的引用。
I have a UITabBarController that is being presented modally from a RootViewController:
stvTabBarController = [[UITabBarController alloc] init];
stvTabBarController.delegate = self;
stvTabBarController.viewControllers = [NSArray arrayWithObjects:stvNavController, scheduleNavController, nil];
stvTabBarController.selectedViewController = stvNavController;
[self presentModalViewController:stvTabBarController animated:YES];
How can I switch tabs from stvNavController? I can't do:
self.tabBarController.selectedIndex = 3;
because I don't have a reference to the tabBarController in the stvNavController.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
检查 stvNavController 的
parentViewController
属性的值 - 它应该是对选项卡栏控制器的引用。Check the value of stvNavController's
parentViewController
property—it should be a reference to the tab bar controller.正如我在代码中看到的,选项卡控制器下只有 2 个视图控制器。
您正在尝试选择第四个...
As I see in your code there are only 2 view controllers under the tab controller.
You are trying to select the fourth one...
1:添加UIApplicaition扩展
2:获取tabbarcontroller的引用
1:Add UIApplicaition Extension
2: Get the reference of tabbarcontroller