• viewControllers

    UIViewController的数组,即要显示的VC,数组中VC的顺序即是实际展示的VC的顺序。UITabBarController最多展示5个tab,如果数组中的元素的个数超过了5个,会正常展示前四个tab,然后有一个更多的tab,可以选择其他的tab。

  • customizableViewControllers

    点击更多时,会有编辑按钮,然后用户可以对这些tab排序。此时,可以进行排序的tabvc是在这个数组内,不在这个数组内的,不会参与排序。

此时viewControllers数组有6个元素,customizableViewControllers有5个对象。因此,可以排列的VC个数只有5个。

如果不设置customizableViewControllers属性,那么默认所有的VC都可以进行排序。

- selectedIndex与selectedViewController
设置哪一个tab被选中,可读可写

UITabBar

UItabBarController有一个叫做tabBar的属性,却是只读的。tabBar由很多tabBarItem来配置,每一个tabBarItem都是由对应的VC来配置的。每一个VC都有一个tabBarItem的属性。通过设置每一个VC的tabBarItem属性,然后把这些VC加到UITabBarController的viewControllers中,即可定制底部tabbar的属性。

        self.catVC?.tabBarItem = UITabBarItem.init(title: "cat",
image:TGResizeImage(image!,byRatio: 0.5).imageWithRenderingMode(.AlwaysOriginal),
tag: 0);
self.pigVC?.tabBarItem = UITabBarItem.init(title: "pig",
image:TGResizeImage(image!,byRatio: 0.5).imageWithRenderingMode(.AlwaysOriginal),
tag: 1);
self.duckVC?.tabBarItem = UITabBarItem.init(title: "duck",
image:TGResizeImage(image!,byRatio: 0.5).imageWithRenderingMode(.AlwaysOriginal),
tag: 2)
self.sheepVC?.tabBarItem = UITabBarItem.init(title: "sheep",
image:TGResizeImage(image!,byRatio: 0.5).imageWithRenderingMode(.AlwaysOriginal),
tag: 3)
self.carVC?.tabBarItem = UITabBarItem.init(title: "car",
image:TGResizeImage(image!,byRatio: 0.5).imageWithRenderingMode(.AlwaysOriginal),
tag: 4)
self.extralVC?.tabBarItem = UITabBarItem.init(title: "extra",
image:TGResizeImage(image!,byRatio: 0.5).imageWithRenderingMode(.AlwaysOriginal),
tag: 5)
self.viewControllers = [self.catVC!,self.pigVC!,self.duckVC!,self.sheepVC!,self.carVC!,self.extralVC!];
  • backgroundImage
    背景图,如果不是可拉伸的,那么背景图会向瓦片一样平铺。原文是
    > the tab bar tiles the image
  • shadowImage

    TabBar上面的图像。如果要设置这个属性,必须先设置backgroundImage属性,否则会安装设置一个默认的image

    • 如何取消TabBar上面的一条虚线
    self.tabBar.setValue(1, forKey: "_hidesShadow")

  • selectionIndicatorImage
    选中态的图像

UITabBarController的属性的更多相关文章

  1. 混合使用UITabBarController和UINavigationController

    混合使用这两个控件的好处是我们可以在NavigationBar添加更多的东西,如标题,按钮等.让用户能够获得更多的信息. UITabBarController的属性ViewControllers接受以 ...

  2. UI第十六节——UITabBarController详解

    一.UITabBarController主要用来管理你提供的content view controllers,而每一个 content view controller则负责管理自己的view层级关系, ...

  3. UI学习笔记---第十二天UITabBarController

    页签视图控制器-UITabBarController   自定义UITabBar     block高级 一.UITabBarController 结构为三层:Tab bar controller v ...

  4. iOS开发-UITabBarController详解

    我们在开发中经常会使用到UITabBarController来布局App应用,使用UITabBarController可以使应用看起来更加的清晰,iOS系统的闹钟程序,ipod程序都是非常好的说明和A ...

  5. iOS UIKit:TabBar Controller

    1 结构剖析 IOS中的标签导航其实是一个UITabBarController对象,其也是一个Container View Controller.UITabBarController对象创建和管理了一 ...

  6. 转场动画UINavigationControllerDelegate

    从iOS7开始,苹果更新了自定义ViewController转场的API,这些新增的类和接口让很多人困惑,望而却步.本文就从这些API入口,让读者理清这些API错综复杂的关系. 几个protocol ...

  7. swift4.0 方法监听Selector写法总结

    import UIKit class MainViewController: UITabBarController { //MARK:属性 懒加载 lazy var composeBtn = UIBu ...

  8. jqu

    1 /*2 * 说明:3 * 本源代码的中文注释乃Auscarlin呕心沥血所作.旨在促进jQuery的传播以及向广大jQuery爱好者提供一个进阶4 *的途径,以让各位更加深入地了解jQuery,学 ...

  9. [BS-03] 统一设置UITabBarController管理的所有VC的tabBarItem图标文字的颜色大小等属性

    1. 统一设置UITabBarController管理的所有VC的tabBarItem图标文字的颜色大小等属性 . 统一设置UITabBarController管理的所有VC的tabBarItem图标 ...

随机推荐

  1. PHP微信授权登录信息

    文件1:index.php //换成自己的接口信息 $appid = 'XXXXX'; header('location:https://open.weixin.qq.com/connect/oaut ...

  2. Zedboard学习(二):zedboard的Linux下交叉编译环境搭建 标签: 交叉编译linuxzedboard 2017-07-04 23:49 19人阅读

    环境准备 首先肯定是要下载xilinx-2011.09-50-arm-xilinx-linux-gnueabi.bin文件,这是官方提供的linux下交叉编译链安装文件,下载地址为:https://p ...

  3. [SoapUI] 在某个测试步骤下面增加Script Assertion,运用 messageExchange 获取response content

    import com.eviware.soapui.support.GroovyUtils import com.eviware.soapui.support.XmlHolder import org ...

  4. [JSON] Validating/Asserting JSON response with Jsonlurper

    import groovy.json.JsonSlurper def response = messageExchange.response.responseContent log.info &quo ...

  5. 案例研究:手机APP的UI设计流程

    以下内容由Mockplus(http://www.mockplus.cn)团队翻译整理,仅供学习交流. UI设计——不仅仅是创造漂亮的图像. 面临的挑战 我为自己提供了一个绝佳的机会来训练我的视觉设计 ...

  6. windows关闭/开启休眠命令行

    C:\hiberfil.sys占用空间过大,可以考虑关闭休眠 powercfg -h off 重新开启 powercfg -h on

  7. 去除SVN图标并解除svn控制 (转)

    今天一不小心把F盘弄成了SVN管理项目,结果如图: 看到这个,当场晕菜,经过不懈的努力终于找到一种方法,如下: 右键  ===>TortoiseSVN   ===>Settings 点击确 ...

  8. firefox ubuntu 中文包

    sudo apt-get install firefox-locale-zh-hans

  9. Smart3d 近景摄影测量与航空摄影测量

    实例:http://blog.sina.com.cn/s/blog_8f68d2350102wef4.html ContextCapture(Smart3d):https://www.bentley. ...

  10. select、poll、epoll的比较

    linux提供了select.poll.epoll接口来实现IO复用,三者的原型如下所示,本文从参数.实现.性能等方面对三者进行对比. int select(int nfds, fd_set *rea ...