开发者社区> 问答> 正文

使用Segmentfault的URLManager与自定义tabbar怎么配合才是最佳实践?

情况:
我的应用需要“启动展示view”->“登录view”->“内容view”(这三步用URLManager在AppDelegate里面做的URL和ViewController关联)

其中的“内容view”是navigation和tabbar组合的,中间部分是自定义的tableview,当点击tableview的时候,push一个新的view,新view只有navigation,但是没有tabbar了,或者需要定制一新的tabbar。

问题:
怎样组合URLManager和自定义tabbar才是这种情况的最佳实践?

思路一:

所有的ViewController和URL地址的注册都放到AppDelegate里面,任何时候的跳转都是根据URLManager的实践进行跳转,其中在“内容View”里面将tabbar的实现addsubview到内容view中。

思路二:

“启动展示View”、“登录View”这三个View在AppDelegate中注册关联,然后把navigation对象在rootview加载上,在登陆成功后,将rootveiw换成“内容View的一个导航控制器”,这这个控制器中加入自定义tabbar和内容tableview。

不知道以上两个思路哪个更容易一些,还是这两个思路都不靠谱。

展开
收起
a123456678 2016-07-20 16:20:32 1812 0
1 条回答
写回答
取消 提交回答
  • 首先,URLManager提供的两个最重要的东西:

    通过URL生成ViewController
    以URL为基础处理NavigationController
    首先,所有的URL和ViewController的对应关系一定是要在AppDelegate里定义的。

    然后,UMNavigationController现在只能提供非常简陋的原始push和pop的动画。
    内容View,直接就是UITabBar的View,然后每个Tab都是一个UMNavigationController。因为UMNavigationController和UMViewController都是从UINavigationController和UIViewController继承的,所以要隐藏或自定义TabBar就直接用hidden方法,或替换就可以了。

    展示View和登录View,这两个View其实不是整体流程里的View,完全脱离内容View流程的,也就是不用UMNavigationController管理。所以,不管是用不用URL注册的方式都不重要了~~~而且要自己管理动画之类的。

    2019-07-17 19:59:01
    赞同 展开评论 打赏
问答地址:
问答排行榜
最热
最新

相关电子书

更多
Flutter in action——闲鱼最佳实践 立即下载
UI2CODE智能生成flutter代码--整体架构 【上叶】 立即下载
《 优酷APP全量支持“暗黑模式” 设计与技术完整总结》 立即下载