1.先搭建基础界面 TabBarController上添加5个NavigationController 由于给定的图片是直接加上文字的 所以这里要重写TabBarController
TabBarController 可以看成一个View加上5个按钮
注意点 (1)首先要移除系统自带的tabbar 因为系统的tabbar是readonly 不移除不能重新创建 适配IOS6和IOS7系统自带的在2个版本差别很大
(2)UIControlStateSelected 这个状态默认是NO 设置后才回被选中 想让他被选中时显示其他状态 而不是高亮状态。
一般写法是设置第一个按钮已经被选中 (总要有个先被选才能显示页面)
然后在点击事件中把选中的按钮取消选中 被点击的按钮设置seleted属性YES如何设置被点击按钮为当前按钮。
(3)UIControlEventTouchDown 手指一按下去就会触发这个事件
(4)按钮的4个属性
normal : 普通状态
highlighted :高亮(用户长按的时候达到这个状态)
disable : enabled = NO
selected : selected = YES
(5)切换子控制器 self.selectedIndex 子控制器索引默认是0开始到数字 赋值可切换
(6)点击按钮还是会出现高亮反应 点击长按是灰色 这个时候要重写按钮的- (void)setHighlighted:(BOOL)highlighted方法让他不实现 也就是空方法
[self.tabB

本文介绍了如何构建彩票应用的基础界面,特别是TabBarController上添加5个NavigationController。重点在于移除系统自带的tabbar并自定义TabBarController,处理不同iOS版本的适配问题,以及UIControl的各种状态。同时,文章提到了代码优化和封装,创建一个名为MJTabBar的自定义视图来管理tabbar,并通过代理通信更新TabBarController的selectedIndex。最后,讨论了如何拦截和重写pushViewController方法以实现特定功能。

3415

被折叠的 条评论
为什么被折叠?



