1.UITabbarViewController标签试图控制器。由于标签页本就起着分类的作用,所以往往呈现的视图内容之间,可以是毫不相关的功能。

UITabbarViewController仍然继承自UIViewController,但标签栏和导航栏都有着始终处于所有视图最前端的特性。

对于标签页栏,他是一个UITabbar类的对象,无论横竖屏,在其之上可以放置最少1个,最多5个的标签页。当然如果有更多的标签页的话,页栏会将最后的标签页改变成一个默认的"More"标题带有默认的“...”图片的标签项目。

并且,UITabbarController还支持排序的编辑功能,只要开发者为UITabbarController的customizableViewControllers属性配置上支持编辑的所有试图控制器,在随后的“”More“标签项所显示的导航视图右上方,用户可以点击”Edit“开启编辑模式,自定义想要显示在标签栏页上的项目,以及相互之间的顺序。

2.标签页上的标记

当试图控制器和某个标签页互相关联后,开发者就可以通过视图控制器对象的tabBarItem属性来访问到标签项目,对于标记来说,只需要对tabBarItem的badgeValue赋上字符串内容即可,

self.navigationController.tabBarItem.badgeValue=badgeTxtF.text

3.标签栏上的警告框

由于UITabbarController的UITabbar对象对于整个视图层次来说,处于一种始终位于最前最上层的状态。所以当开发者有需要以UIActionSheet进行警告框的呈现时,不再适用于showInView的方法,取而代之的时UIActionSheet对象的showFromTabBar方法

1 UIActionSheet *sheet=[[UIActionSheet alloc]initWithTitle:@"测试警告框" delegate:nil cancelButtonTitle:@"取消"  destructiveButtonTitle:@"重要按钮"  otherButtonTitles:nil];
2
3 [sheet showFromTabBar:self.tabBarController.tabBar];

4.隐藏标签栏

就像上一节我们介绍的导航栏和状态栏隐藏那样,标签栏在某些情况下同样也支持隐藏。

这里之所以要说到”某些情况下“,是因为默认的标签栏无法隐藏,即使我们强行将UITabbar对象的hidden属性设置成了YES,整个界面上会在标签栏的位置留下一片空白,任何试图控制器都无法将其真正覆盖。

但是到标记项目所对应的视图控制器是一个导航视图控制器,当为导航视图控制器压栈显示一个新视图时,开发者可以通过新视图控制器的hidesBottomBarWhenPushed来让新的视图显示在无标签栏的状态下。由于新的视图会填满标签栏所在位置而造成自己的高度拉伸,视图上面的所有控件需要保持位置的正确。

1 testVC.hidesBottomBarWhenPushed=YES;

转载于:https://www.cnblogs.com/haibosoft/p/3660610.html

IOS 学习笔记(3) 视图UITabbarController相关推荐

  1. IOS学习笔记(九)之UIAlertView(警告视图)和UIActionSheet(操作表视图)基本概念和使用方法...

    IOS学习笔记(九)之UIAlertView(警告视图)和UIActionSheet(操作表视图)基本概念和使用方法 Author:hmjiangqq Email:jiangqqlmj@163.com ...

  2. iOS学习笔记-自己动手写RESideMenu

    代码地址如下: http://www.demodashi.com/demo/11683.html 很多app都实现了类似RESideMenu的效果,RESideMenu是Github上面一个stars ...

  3. IOS学习笔记(四)之UITextField和UITextView控件学习

    IOS学习笔记(四)之UITextField和UITextView控件学习(博客地址:http://blog.csdn.net/developer_jiangqq) Author:hmjiangqq ...

  4. iOS学习笔记-地图MapKit入门

    代码地址如下: http://www.demodashi.com/demo/11682.html 这篇文章还是翻译自raywenderlich,用Objective-C改写了代码.没有逐字翻译,如有错 ...

  5. iOS学习笔记-自定义过渡动画

    代码地址如下: http://www.demodashi.com/demo/11678.html 这篇笔记翻译自raywenderlick网站的过渡动画的一篇文章,原文用的swift,由于考虑到swi ...

  6. OpenCV for Ios 学习笔记(4)-标记检测1

    本文原始地址:OpenCV for Ios 学习笔记(4)-标记检测1 简单的标记经常是以白色块和黑色块构成的规则图形.因为我们预先知道这些因素,所以我们可以很容易检测标记. 如图: 首先,我们需要找 ...

  7. IOS学习笔记07---C语言函数-scanf函数

    2013/8/7 IOS学习笔记07---C语言函数-scanf函数 ------------------------------ qq交流群:创梦技术交流群:251572072            ...

  8. IOS学习笔记07---C语言函数-printf函数

    IOS学习笔记07---C语言函数-printf函数 0 7.C语言5-printf函数 ------------------------- ----------------------------- ...

  9. IOS学习笔记06---C语言函数

    IOS学习笔记06---C语言函数 --------------------------------------------  qq交流群:创梦技术交流群:251572072              ...

最新文章

  1. 【解决办法】No module named 'ahocorasick'
  2. boost::polygon模块实现多边形点相关的测试程序
  3. martingale、markov chain、Monte Carlo、MCMC
  4. Struts2中通过Ajax传递json数据
  5. boost::stable_vector简单解析
  6. mysql+百万+中间表_MYSQL优化
  7. Linux性能优化实战:CPU的上下文切换是什么意思(03)
  8. LISP 冻结excel窗格_Excel这10个实操技巧,每个都很牛逼,绝对不能错过
  9. 安装vbb的一些经验(包括mysql,apache)
  10. 关于成本核算方法、步骤、成本分析的简单回复
  11. 去除pdf文件的许可口令(密码)
  12. word页眉页脚页码设置详解
  13. Idea 编译报错:Ambiguous method call. Both...
  14. python-Matplotlib图形上添加箭头指示
  15. Android Studio Text组件介绍
  16. 如何恢复计算机手机桌面图标,桌面图标不见了怎如何恢复
  17. (附源码)计算机毕业设计SSM旅游分享平台
  18. 关于风向的u、v分量,及根据uv计算风向公式
  19. 如何降低计算机版本,如何在win7系统电脑中将IE浏览器的版本降低
  20. 三级数据库技术|重要知识点(一)

热门文章

  1. 计数 APP android,SharedPreferences初学~个人备忘录以及对进入APP的次数进行计数
  2. python的numpy教程_python numpy 基础教程 | 学步园
  3. [转] Vb中FSO 对象的介绍
  4. CMD/DOS下符号的作用参考
  5. 自主芯片+国产系统!天河三号原型机研制完成,中国超算有望重回No.1
  6. 现在,TensorRT 4开放下载了
  7. 欧莱雅收购AI公司ModiFace,想让自拍照“一键上妆”
  8. 原生JS实现简易转盘抽奖
  9. 从在浏览器中输入URL到页面渲染出来的完整过程是怎样的?
  10. input type属性为file时(type=file),上传一次然后做更新input的change事件