iOS 仿Max+框架

我写的Demo:MadMax

前段时间看到一款Max+的app,类似于英雄联盟盒子,厉害的是,这款app集成了四款游戏的盒子,包括英雄联盟、csgo、dota2和守望先锋,我对他的框架很感兴趣,于是便仿写了一下框架结构😁。

这里演示通过左栏切换不同盒子

我们可以发现,通过左栏切换不同盒子的时候,底部导航和内容完全变化了,就好像完全进入了一个新的应用。我再此处分析了一下结构,自己猜想了一下,四个应用的顶部导航并没有发生什么变化,通过左栏切换,底部导航和内容发生了变化,这样我就认为,顶部导航应该是高级导航,他肯能控制着这四个底部导航,而左栏可以在任意页面的顶部导航调出,那么我认为左栏和顶部导航应该平级关系。

结构思维导图

有了这个结构,我就开始了自己创建结构,在我的上一篇文章中,我写了抽屉的思想,在这里可以很好的应用,我创建一个rootVC,这个rootVC控制这左栏和navigation,在左栏里设置button点击来让navigation切换不同的tabBar。这里先展示下我的成果,😁。

这是根据分析做的框架

这个框架的关键有两处:

1、在appdelegate里设置rootVC,这个rootVC是里有自己封装的方法,这个方法就是设置navigation和左栏的。

2、如何让navigation控制三个不同的tabbar,点击左栏如何能切换不同的tabbar。

第一个关键,在上篇文章里已经讲过,这里不再累述。

第二个关键,就是我们在navigationVC里注册上通知,当收到通知,我们就让navigation切换tabbar,那么在每次进入应用的时候,我们的通知是必须祖册的,我们在左栏的button点击事件里也发送通知,三个btn对应三个通知,这样我们就实现了切换。

这样看来,我们的仿写也就差不多了,如果有UI和资源,也可以做的差不多,到底max+是不是这样做的,也不得而知。

以上是自己的一点想法和实践,欢迎讨论和好的建议。🙃。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • WebSocket-Swift Starscream的使用 WebSocket 是 HTML5 一种新的协议。它实...
    香橙柚子阅读 24,111评论 8 183
  • 脑子已乱成一团,完全没有头绪…… 越来越觉得那些狗血剧,有迹可循。生活,除了眼前的狗血,还有未来的狗血...
    ll小姐_ying阅读 153评论 0 0
  • 表单 HTML 元素 表示了文档中的一个区域,这个区域包含有交互控制元件,用来向web服务器提交信息。 nam...
    卓小生阅读 612评论 0 0
  • 幽笛 幽笛声唤引雀归, 辛夷从步驾天涯, 流光华彩如此逝, 何妨殊途话昙花。
    理疗瑜伽邵阅读 472评论 0 0