UITabBarController详细说明(简介和设置)
- - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
- {
- self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
- // Override point for customization after application launch.
- self.window.backgroundColor = [UIColor whiteColor];
- #pragma mark - 设置tabBarItem
- #pragma mark 第一个视图ViewController
- HMT_AViewController * tabBarViewA = [[HMT_AViewController alloc] init];
- // 设置A视图下----标签栏标题文字(可參照微信或者QQ体会)
- tabBarViewA.tabBarItem.title = @"微信";
- // 设置A视图下----标签栏图片(由于自己没有图片,在这里随便设置了个名字)
- //tabBarViewA.tabBarItem.image = [UIImage imageNamed:@"1.png"];
- // 设置A视图下----标签栏信息提示(住:badgeValue是NSString类型 例如以下设置了3,就像QQ消息有3条未接受一样,给人一种提醒)
- tabBarViewA.tabBarItem.badgeValue = @"3";
- // ios7弃用了----标签栏选中的时候显示一张图片,没选中的时候显示还有一张图片
- //[tabBarViewA.tabBarItem setFinishedSelectedImage:actionMenu.selectedIcon withFinishedUnselectedImage:actionMenu.icon];
- // ios7的方法(自己没有图片,所以代码里面的图片都是一个随便取的名字,没有有用意义)
- //tabBarViewA.tabBarItem.selectedImage = actionMenu.selectedIcon;
- #pragma mark 第二个视图ViewController
- // 第二个视图ViewController
- HMT_BViewController * tabBarViewB = [[HMT_BViewController alloc] init];
- // 设置B视图下----标签栏
- // 用系统提供的标识(能够算等价于图标和文字)进行设置(參数:UITabBarSystemItem是个枚举值,想要什么形式,就去系统提供的API中找)
- tabBarViewB.tabBarItem = [[UITabBarItem alloc]initWithTabBarSystemItem:UITabBarSystemItemSearch tag:1];
- // 设置B视图下----标签栏信息提示
- tabBarViewB.tabBarItem.badgeValue = @"GO";
- #pragma mark 第三个视图ViewController
- HMT_CViewController * tabBarViewC = [[HMT_CViewController alloc] init];
- tabBarViewC.tabBarItem = [[UITabBarItem alloc]initWithTabBarSystemItem:UITabBarSystemItemDownloads tag:2];
- // 设置B视图下----标签栏信息提示
- tabBarViewC.tabBarItem.badgeValue = @"new";
- #pragma mark 第四个视图ViewController
- HMT_DViewController * tabBarViewD = [[HMT_DViewController alloc] init];
- tabBarViewD.tabBarItem = [[UITabBarItem alloc]initWithTabBarSystemItem:UITabBarSystemItemFavorites tag:3];
- // 设置B视图下----标签栏信息提示
- tabBarViewD.tabBarItem.badgeValue = @"99";
- #pragma mark 第五个视图ViewController
- HMT_EViewController * tabBarViewE = [[HMT_EViewController alloc] init];
- tabBarViewE.tabBarItem = [[UITabBarItem alloc]initWithTabBarSystemItem:UITabBarSystemItemHistory tag:4];
- // 设置B视图下----标签栏信息提示
- tabBarViewE.tabBarItem.badgeValue = @"sky";
- #pragma mark 第六个视图ViewController(系统默认能显示的最大视图个数是5个)
- /* 假设你的viewControllers属性加入了多于五个的items,那tab bar controller将会自己主动插入一个特殊的view controller,
- 称为 More view controller,该 controller 将会负责管理多于的items,这个More view controller提供一个自己定义的界面,
- 用table的方式呈现多余的view controller。而且view controller的数量是不限制的*/
- HMT_FViewController * tabBarViewF = [[HMT_FViewController alloc] init];
- tabBarViewF.tabBarItem = [[UITabBarItem alloc]initWithTabBarSystemItem:UITabBarSystemItemContacts tag:5];
- // 设置F视图下----标签栏信息提示
- tabBarViewF.tabBarItem.badgeValue = @"AG";
- #pragma mark - 设置TabBarController
- // 创建TabBarController
- UITabBarController * tabBarController = [[UITabBarController alloc]init];
- // TabBarController默认是放在最底部的,假设你想调整位置,能够进行以下2部操作(44是iPhone中TabBarController和UINavigationController标准高度)
- //CGRect frame = CGRectMake(0, 20, 320, 44);
- //tabBarController.tabBar.frame = frame;
- // 每个tab都必须有一个content view controller------->viewControllers属性,用来存入一个应用的TabBarController有多少个界面切换
- tabBarController.viewControllers = [NSArray arrayWithObjects:tabBarViewA,tabBarViewB,tabBarViewC,tabBarViewD,tabBarViewE,tabBarViewF, nil nil];
- // 设置着色
- tabBarController.tabBar.tintColor = [UIColor greenColor];
- // 设置选中图片时候
- tabBarController.tabBar.selectedImageTintColor = [UIColor brownColor];
- // 设置背景图片(自己没有图片,不进行设置)
- //tabBarController.tabBar.backgroundImage = [UIImage imageNamed:@"@@@@@"];
- // 设置程序启动时默认的ViewController视图(设置为3,一共5个ViewController,进来时候显示的视图就是第4个-tabBarViewD,下标从0開始)
- tabBarController.selectedIndex = 3;
- self.window.rootViewController = tabBarController;
- [self.window makeKeyAndVisible];
- return YES;
- }
@最后效果例如以下图:
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvenVveW91MTMxNA==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">
版权声明:本文博主原创文章,博客,未经同意不得转载。
UITabBarController详细说明(简介和设置)的更多相关文章
- UITabBarController 、TabBar背景颜色设置,UITabBarItem的文字样式(颜色和大小)UITabBarItem的位置调整
改变UITabBarController的颜色 UIView*mView=[[UIView alloc]initWithFrame:CGRectMake(0,0,320,48)];//这是部分tabb ...
- Keepalived详细介绍简介
1.1.Keepalived简介 Keepalived是Linux下一个轻量级别的高可用解决方案.高可用(High Avalilability,HA),其实两种不同的含义:广义来讲,是指整个系统的高可 ...
- 详细:idea如何设置类头注释和方法注释
IntelliJ IDEA 类注释和自定义方法注释 来源:https://my.oschina.net/baishi/blog/617478#navbar-header intellj idea的 ...
- CentOS6.6图文详细安装教程(有些设置大部分教程没出现过,附带网络设置等)
作者:Sungeek 出处:http://www.cnblogs.com/Sungeek/ 欢迎转载,也请保留这段声明.谢谢! Centos6.6 下载地址:thunder://QUFodHRwOi8 ...
- 【开发技术】Eclipse插件Call Hierarchy简介及设置
Call Hierarchy 主要功能是 显示一个方法的调用层次(被哪些方法调,调了哪些方法) 在MyEclipse里Help - Software updates - Find and instal ...
- linux设置iptables防火墙的详细步骤(centos防火墙设置方法)
CentOS系统也是基于linux中的它的防火墙其实就是iptables了,下面我来介绍在CentOS防火墙iptables的配置教程,希望此教程对各位朋友会有所帮助. iptables是与Lin ...
- 虚拟机VMWare安装苹果系统MacOS详细教程(联网设置,全屏插件、文件互传)
运行环境: VMware® Workstation 12 Pro(自行安装,或者用这个) 推荐(下面以10.11.6版本做的教程,但是安装时推荐使用此版本安装然后升级到10.11.6):MacOS X ...
- MySQL - binlog日志简介及设置
基本概念 binlog是Mysql sever层维护的一种二进制日志,与innodb引擎中的redo/undo log是完全不同的日志:其主要是用来记录对mysql数据更新或潜在发生更新的SQL语句, ...
- thinkphp路由简介和设置使用
use think\Route; //静态路由 Route::rule('/', 'index/index/index'); Route::rule('test', 'index/index/test ...
随机推荐
- python语言学习7——数据类型和变量
整数 python可以处理任意大小的整数,包括负整数,在程序中的表示方法和数学上的写法一样 计算机由于使用二进制,有时候采用十六进制表示整数比较方便,十六进制数用0x前缀 浮点数 简单的小数就直接用小 ...
- Android设计模式(二)--策略模式
1.定义: The Strategy Pattern defines a family of algorithms,encapsulates each one,and makes them inter ...
- WPF案例(-)模拟Windows7 Win+Tab切换
原文:WPF案例(-)模拟Windows7 Win+Tab切换 一个使用Wpf模拟Windows7 Win+Tab页面切换的小程序,使用快捷键Ctrl+Down或Ctrl+Up在示例程序各个页面元素之 ...
- HDU 3639 Hawk-and-Chicken(良好的沟通)
HDU 3639 Hawk-and-Chicken 题目链接 题意:就是在一个有向图上,满足传递关系,比方a->b, b->c,那么c能够得到2的支持,问得到支持最大的是谁,而且输出这些人 ...
- C#的百度地图开发(二)转换JSON数据为相应的类
原文:C#的百度地图开发(二)转换JSON数据为相应的类 在<C#的百度地图开发(一)发起HTTP请求>一文中我们向百度提供的API的URL发起请求,并得到了返回的结果,结果是一串JSON ...
- 蓝桥杯软件学院webserver,android
- poj2486(树形dp)
题目链接:http://poj.org/problem?id=2486 题意:一颗树,n个点(1-n),n-1条边,每个点上有一个权值,求从1出发,走m步,最多能遍历到的权值. 分析:非常不错的树形d ...
- HDU 3830 Checkers
意甲冠军: 有三件 所有其他棋子可以跳 不能分开的两个跳跃 当被问及状态u为了国家v最低短跳转 思路: 对于一个状态三个棋子的位置能够设为 x y z (小到大) 仅仅有当y-x=z-y的时候 ...
- PHP:小数位计算
本文提供了两种方法,分数的方法成为字符串.然后,"."为了拦截.跟.子长后.另一个是关于小数*10的N钍.实例10的8再次钍8取余次.然后继续10余.取决于10结果的余数是不0. ...
- Linux下精确控制时间的函数
Linux下精确控制时间的函数 在测试程序接口运行时间的时候,常用time,gettimeofday等函数,但是这些函数在程序执行的时候是耗费时间的,如果仅仅测试时间还行,但是如果程序中用到时间控制类 ...