UITabBarController:标签栏控制器,继承自UIViewController,用标签栏的形式管理视图控制器,各标签栏对应的视图控制器之间相互独立,互不影响,单击标签栏,显示标签栏对应的视图控制器,各视图控制器的生命周期与tabBarController的生命周期一致使各模块之间低耦合,易于团队开发,根据需要随时添加、删除模块

创建一个tabBarItem对象,创建时指定其标题,图片和选中时的图片

UITabBarItem *item3=[[UITabBarItem alloc]initWithTitle:@"vc3" image:[UIImage imageNamed:@"tab_2.png"] selectedImage:[UIImage imageNamed:@"tab_s.png"]];

采用系统自带的样式创建tabBarItem对象,设置tag值,一般不用,自己不能修改title

UITabBarItem *item4=[[UITabBarItem alloc]initWithTabBarSystemItem:UITabBarSystemItemBookmarks tag:4];

vc3.tabBarItem=item4;

tabBarController中可以管理任意UIViewController对象当tabBarController管理的视图控制器的个数多于5个时,会生成一个moreNavigationController对象,将第5个和第5个之后的项以列表的形式显示出来视图控制器在数组中的顺序与显示的顺序一致

NSArray *viewControllers=@[nav1,vc2,vc3,vc4,vc5,vc6];

创建UITabBarController对象

UITabBarController *tabBarController=[[UITabBarController alloc]init];

设置tabBarController管理的视图控制器对象(数组,任意UIViewController的对象都可以添加到数组中)

tabBarController.viewControllers=viewControllers;

设置选中的标签栏项的下标,默认显示的是第一个标签栏项对象的视图

tabBarController.selectedIndex=1;

设置选中的视图控制器对象

tabBarController.selectedViewController=viewControllers[2];

从userDefaults中取出上一次用户选择的视图控制器的标题

NSUserDefaults *userDefaults=[NSUserDefaults standardUserDefaults];

NSString *title=[userDefaults objectForKey:TITLEKEY];

NSArray *array=[userDefaults objectForKey:GROUPKEY];

设置tabBar的背景色

tabBarController.tabBar.barTintColor=[UIColor redColor];

设置tabBar上选中的item上的颜色

tabBarController.tabBar.tintColor=[UIColor greenColor];

tabBar的高度是49像素

不能修改tabBar上的item

UI控件之UITabBarController的更多相关文章

  1. ANDROID L——Material Design详解(UI控件)

    转载请注明本文出自大苞米的博客(http://blog.csdn.net/a396901990),谢谢支持! Android L: Google已经确认Android L就是Android Lolli ...

  2. WinForm/Silverlight多线程编程中如何更新UI控件的值

    单线程的winfom程序中,设置一个控件的值是很easy的事情,直接 this.TextBox1.value = "Hello World!";就搞定了,但是如果在一个新线程中这么 ...

  3. 富客户端 wpf, Winform 多线程更新UI控件

    前言 在富客户端的app中,如果在主线程中运行一些长时间的任务,那么应用程序的UI就不能正常相应.因为主线程要负责消息循环,相应鼠标等事件还有展现UI. 因此我们可以开启一个线程来格外处理需要长时间的 ...

  4. UI控件(复习一下)

    如何修改控件状态• 可见,确实需要经常修改控件状态• 那如何去修改控件的状态呢?方法很简单➢ 每一个UI控件都是一个对象➢ 修改UI控件的状态,其实就是修改控件对象的属性➢ 比如修改UILabel显示 ...

  5. IOS学习资源收集--开发UI控件相关

    收集的一些本人了解过的iOS开发UI控件相关的代码资源(本文持续补充更新) 内容大纲: 1.本人在github上也上传了我分装好的一些可重复利用的UI控件 2.计时相关的自定义UILabel控件 正文 ...

  6. 《深入理解Windows Phone 8.1 UI控件编程》基于最新的Runtime框架

    <深入理解Windows Phone 8.1 UI控件编程>本书基于最新的Windows Phone 8.1 Runtime SDK编写,全面深入地论述了最酷的UI编程技术:实现复杂炫酷的 ...

  7. AppleWatch___学习笔记(二)UI布局和UI控件

    1.UI布局 直接开发,你会发现Apple Watch并不支持AutoLayout,WatchKit里有个类叫做WKInterfaceGroup,乍一看像是UIView,但是这货其实是用来布局的.从 ...

  8. (转).NET 4.5中使用Task.Run和Parallel.For()实现的C# Winform多线程任务及跨线程更新UI控件综合实例

    http://2sharings.com/2014/net-4-5-task-run-parallel-for-winform-cross-multiple-threads-update-ui-dem ...

  9. Atitit. .net c# web 跟客户端winform 的ui控件结构比较

    Atitit. .net c# web 跟客户端winform 的ui控件结构比较 .net   4.5 webform Winform 命名空间 System.Web.UI.WebControls ...

随机推荐

  1. Windows Service的转换与部署

    开发Windows Service,可能会碰到以下两种情况. 1. 直接开发一个Windows Service 网上有很多教程,可以参考这个: http://www.cnblogs.com/sorex ...

  2. Python 2.7 中使用 Print 方法

    print ("test",file=name)类似的方法在python 2中需要先引入 __future__才可使用 import __futhure__ import prin ...

  3. Gmail 邮件配置备忘

    1.smtp端口号不是默认的25,smtp的是587 2.必须设置“允许使用不够安全的应用” 其他的按照网上文档设置就好了

  4. MySQL的语法高级之SELECT

    1.语法:select 字段列表 from  子句 [where 子句][group by 子句][ order by 子句][having 子句][limit 子句]; 注解: 1.where子句对 ...

  5. spring无法启动常见原因及排查方法

    这里总结的问题,通常啥错误也不报,需要自个debug排查,当然每个人遇到的问题可能是不同的,这里仅仅是我个人帮同事解决问题后的一些总结,可能网上的小伙伴可能也遇到,姑且简单记录一下: 1. mybat ...

  6. 【spring boot logback】spring boot中logback日志乱码问题

    在初次使用logback的自定义配置文件完整的控制spring boot日志后,发现了一个无法忍受的问题,就是日志乱码. 控制台看到打印日志乱码如下: 而日志文件打开: 记事本打开 sublime打开 ...

  7. [Docker]学习笔记--搭建gitlab

    Gitlab 是一个用于仓库管理系统的开源项目.使用Git作为代码管理工具,并在此基础上搭建起来的web服务. 详细介绍可以参照官网,https://about.gitlab.com/ 今天主要是通过 ...

  8. Permutation Descent Counts(递推)

    1968: Permutation Descent Counts Submit Page   Summary   Time Limit: 1 Sec     Memory Limit: 128 Mb  ...

  9. GridView实现编辑删除

    前台界面: <asp:GridView ID=" ForeColor="#333333" AutoGenerateColumns=" OnRowCance ...

  10. maven仓库添加本地jar

    一.将jar添加到本地仓库的做法: 以下面pom.xml依赖的jar包为例: 实际项目中pom.xml依赖写法: <dependency> <groupId>org.sprin ...