iphone – 在Storyboard中创建TabBarControllerDelegate

我在Storyboard驱动的iOS5应用程序中创建UITabBarControllerDelegate有困难.情况如下:

>我有一个初始屏幕,最终将处理登录,但目前只有一个按钮,用户将…
> …带有五个标签的标签栏控制器.这些标签中的每一个都转到……
> …导航控制器,根目录下有许多子视图控制器.

(如果有帮助,相关故事板部分的屏幕截图是here.)

当用户切换选项卡时,我总是希望将用户定向到该特定导航控制器的根视图控制器,而不是最近访问过的View Controller(这是默认行为).

我明白要这样做,我需要按照herehere讨论按Tab键时调用popToRootViewControllerAnimated,但我无法弄清楚如何在故事板中执行此操作.如何在不废弃故事板并重新开始的情况下完成此操作?

谢谢!

最佳答案 您的问题有多种解决方案(这是设计模式决策的问题).其中一些可能是:

>子类UITabBarController并将其设置为故事板中tabbar的自定义类(也将委托连接到对象以便处理)并覆盖-tabBarController:didSelectViewController:委托方法
>通过从您想要实现此行为的每个视图的viewWillDisappear事件中调用-popToRootViewControllerAnimated来弹出到根目录

点赞