我创建了一个带有四个标签的UITabBar的应用程序,每个标签都有一个UINavigationController。其中一个UIViewController是主屏幕,有几个按钮,这些按钮推送到这些UIViewController,如果这个UIViewController推送属于其中一个,我们通过保持主屏幕的相同UINavigationController选择标签(让用户回到主屏幕(导航栏中的UIBarButton))。 如果不使用任何框架,我怎么能这样做?
答案 0 :(得分:0)
我不确定我理解你的问题。您是否在询问如何使其中一个按钮(例如“Actualités”按钮)转到另一个标签?
如果这是您想要做的,您需要将按钮连接到其视图控制器中的IBAction。 IBAction应该做这样的事情:
- (IBAction)accueilButtonWasTouched:(id)sender {
self.tabBarController.selectedIndex = 1;
}
如果这不是您的意思,请尝试更详细地解释您的问题。
根据您的评论,我想我明白您的意思。您想要一个全局导航堆栈。当用户更改选项卡或导航到同一选项卡中的新视图时,您希望将新视图推送到全局导航堆栈。您希望导航栏中的后退按钮返回上一个视图,该视图有时是不同的选项卡,有时是同一选项卡中的不同视图。
这样做很复杂。您需要保留用户操作的全局堆栈。切换选项卡时,需要在堆栈上按下记录上一个选项卡的项目。当用户导航到选项卡中的新视图时,您需要在堆栈上推送一个表示已按下视图的项目。当用户触摸任何选项卡中的后退按钮时,您需要弹出全局堆栈的顶部项目并根据弹出的项目执行操作(切换选项卡或询问当前选项卡的导航控制器以弹出视图控制器)。 / p>