UITabBarController

2017-09-11  本文已影响0人  LucXion

纯代码创建 UITabBarController : 和UINavigationController一样分为4个步骤 : 创建窗口,创建控制器,窗口绑定根控制器(属性rootViewController),窗口设置为主窗口

方法一 :addChildViewController 这个方法专门用于UITabBarController 底部会根据添加子控制器的数量均分成按钮,最多添加5个
方法二 :直接给UITabBarController控制器的ViewControllers 属性添加数组 @[自控制器1,子控制器2];

设置按钮和文字 :要设置对应的按钮图片和文字,直接通过对应控制器的.tabBarItem.image / title 来设置

注意 : iOS7.0后系统自带渲染色(图片和文字选中中蓝色,不选中为灰色)默认渲染颜色

UITabBarController - 右键 - ViewControllers - 连线子控制器

子控制器 : 下面的button对应可以在属性检查器中设置点击的图片,文字

缺陷 : 不能设置文字颜色 ,解决方案,遍历当前控件的子控件找到对应了lable,然后再设置

什么时候使用自定义tabBar : 如果最下方的按钮不是图片加lable类型的,就自定义 两步

// 设置View跟tabBar一样大
   view.frame = self.tabBar.frame; 
//添加到当前根控制器的View中,每个子控制器的底部都是一个根View,tabBar来源于根View
   [self.view addSubview:view]; 

切换子控制器 :

 //选中子控制器在 ViewControllers 数组中的下标与按钮的tag值一致
 self.selectedIndex = sender.tag;

TabBar的封装 : 将代替TabBar的UIView封装
1.重写initWithFrame的构造方法 :

BUG
自定义TabBar ,替换的View必须添加在子控制器添加以后,不然新的按钮会覆盖到上面,层级wanting

上一篇 下一篇

猜你喜欢

热点阅读