加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

ios – 你能在UINavigationController中推送UITabBarController

发布时间:2020-12-14 17:50:43 所属栏目:百科 来源:网络整理
导读:是不是可以在UINavigationController中推送UITabBarController?我在旧版本的iOS中读回来但现在仍然如此? 解决方法 简单地说,是的,你可以. 但仅仅因为你可以,并不意味着你应该. UITabBarController旨在用作根级别的viewController(作为应用程序窗口的rootVi
是不是可以在UINavigationController中推送UITabBarController?我在旧版本的iOS中读回来但现在仍然如此?

解决方法

简单地说,是的,你可以.

但仅仅因为你可以,并不意味着你应该. UITabBarController旨在用作根级别的viewController(作为应用程序窗口的rootViewController).目的是为用户提供最好(最简单)的用户体验. Apple建议保持应用程序的视图层次结构,使得从一个视图控制器到另一个视图控制器只有一个“路径”.

广泛接受的使用UITabBarControlleris将其设置为rootViewController的方法,并将UIViewControllers分配给每个“tab”.如果您希望能够从这些视图控制器推送/弹出,您可以为每个选项卡分配一个UINavigationController,使用自己的rootViewControllers,就像iOS的Facebook应用程序一样.

如果您决定将其推送到UINavigationController,则建议在每个选项卡中使用简单的viewControllers,而不是UINavigationControllers,以避免多个视图层次结构.剩下的就是你作为开发人员.在任何情况下,易编码都会影响最终用户的体验.优先事项始终是后者.

编辑:

>创建一个UITabBarController.
>使用以下方法为每个选项卡设置根视图控制器:

tabBarController.viewControllers = [NSArray arrayWithObjects:
                                         alphaController,betaController,nil];

>将其推入导航控制器.
>在UITabBarController类的viewDidLoad方法中(建议子类化),设置它的UITabBar项(UIBarButtonItems).

使用UITabBarControllerDelegate,您可以处理他们的选择.您不必在选择选项卡时显示viewControllers.您可以通过覆盖shouldSelectViewController:方法来改变它们的行为.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读