UITabbar的简单操作和实际应用
//**标签栏控制器的初始化
UITabBarController * tabbarC = [[UITabBarController alloc] init];
//设置tabBar的颜色
tabbarC.tabBar.barTintColor = [UIColor brownColor];
//设置按钮颜色
tabbarC.tabBar.tintColor = [UIColor cyanColor];
//**创建视图控制器,类似ViewController
UIViewController * c1 = [[UIViewController alloc] init];
c1.view.backgroundColor = [UIColor greenColor];
//**创建系统自带的UITabBarItem
UITabBarItem * c1Item = [[UITabBarItem alloc] initWithTabBarSystemItem:UITabBarSystemItemDownloads tag:0];
//另外两种种初始化方法
UITabBarItem * c2Item = [[UITabBarItem alloc] initWithTitle:@"设置" image:[UIImage imageNamed:@"tab_3"] selectedImage:selectedImage2];
UITabBarItem * c3Item = [[UITabBarItem alloc] initWithTitle:@"首页" image:[UIImage imageNamed:@"tab_0"] tag:0];
//设置右上角红色小气泡
c1Item.badgeValue = @"100";
//**创建好的item赋值给tabBarItem
c1.tabBarItem = c1Item;
//第一种方式添加子控制器
[tabbar addChildViewController:c1];
[tabbar addChildViewController:c2];
[tabbar addChildViewController:c3];
//**第二种方式添加子控制器
tabbarC.viewControllers = @[c1,c2,c3,c4,c5,c6];
//**设置主控制器
self.window.rootViewController = tabbarC;
//**更改显示先后顺序
[self.window makeKeyAndVisible];
//更改选中状态图片UIImageRenderingModeAlwaysOriginal 不做任何修改的图片
self.tabBarItem.selectedImage = [[UIImage imageNamed:@"tab_0"]imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal];
//当导航视图控制器压栈时,隐藏tabbar
vc.hidesBottomBarWhenPushed = YES;
UITabBarController * tabbarVC = [[UITabBarController alloc] init];
FirstViewController * firstVC = [[FirstViewController alloc] init];
firstVC.title = @"第一页";
UINavigationController * firstNav = [[UINavigationController alloc] initWithRootViewController:firstVC];
SecondViewController * secondVC = [[SecondViewController alloc] init];
secondVC.title = @"第二页";
UINavigationController * secondNav = [[UINavigationController alloc] initWithRootViewController:secondVC];
ThirdViewController * thirdVC = [[ThirdViewController alloc] init];
thirdVC.title = @"第三页";
UINavigationController * thirdNav = [[UINavigationController alloc] initWithRootViewController:thirdVC];
tabbarVC.viewControllers = @[firstNav,secondNav,thirdNav];
tabbarVC.viewControllers = @[firstVC,secondVC,thirdVC];
self.window.rootViewController = tabbarVC;
//以视图控制器的名字创建字符串数组
NSMutableArray * viewControllerNames = [NSMutableArray arrayWithArray:@[@"FirstViewController",@"SecondViewController",@"ThirdViewController"]];
//以视图控制器的标题创建字符串数组
NSArray * titleNames = @[@"第一页",@"第二页",@"第三页"];
//遍历viewControllerNames数组
for (NSInteger i = 0; i < viewControllerNames.count; i++) {
//获取数组中的每一项
NSString * vcName = viewControllerNames[i];//FirstViewController
//将字符串转换为Class类型,并通过Class初始化对象
UIViewController * vc = [[NSClassFromString(vcName) alloc] init];
//设置题目
vc.title = titleNames[i];
//创建导航控制器
UINavigationController * nav = [[UINavigationController alloc] initWithRootViewController:vc];
//nav替换viewControllerNames数组中的字符串
[viewControllerNames replaceObjectAtIndex:i withObject:nav];
}
UITabBarController * tabbarVC = [[UITabBarController alloc] init];
tabbarVC.viewControllers = viewControllerNames;
self.window.rootViewController = tabbarVC;
//以视图控制器的名字创建字符串数组
NSMutableArray * viewControllerNames = [NSMutableArray arrayWithArray:@[@"FirstViewController",@"SecondViewController",@"ThirdViewController"]];
//以视图控制器的标题创建字符串数组
NSArray * titleNames = @[@"第一页",@"第二页",@"第三页"];
//遍历viewControllerNames数组
for (NSInteger i = 0; i < viewControllerNames.count; i++) {
//获取数组中的每一项
NSString * vcName = viewControllerNames[i];//FirstViewController
//将字符串转换为Class类型,并通过Class初始化对象
UIViewController * vc = [[NSClassFromString(vcName) alloc] init];
//设置题目
vc.title = titleNames[i];
//创建导航控制器
UINavigationController * nav = [[UINavigationController alloc] initWithRootViewController:vc];
//nav替换viewControllerNames数组中的字符串
[viewControllerNames replaceObjectAtIndex:i withObject:nav];
}
self.viewControllers = viewControllerNames;
UITabbar的简单操作和实际应用的更多相关文章
- x01.MagicCube: 简单操作
看最强大脑,发现魔方还是比较好玩的,便买了一个,对照七步还原法,居然也能成功还原. 为什么不写一个魔方程序呢?在网上找了找,略作修改,进行简单操作,还是不错的,其操作代码如下: protected o ...
- js简单操作Cookie
贴一段js简单操作Cookie的代码: //获取指定名称的cookie的值 function getCookie(objName) { var arrStr = document.cookie.spl ...
- GitHub学习心得之 简单操作
作者:枫雪庭 出处:http://www.cnblogs.com/FengXueTing-px/ 欢迎转载 前言 本文对Github的基本操作进行了总结, 主要基于以下文章: http://gitre ...
- Linq对XML的简单操作
前两章介绍了关于Linq创建.解析SOAP格式的XML,在实际运用中,可能会对xml进行一些其它的操作,比如基础的增删该查,而操作对象首先需要获取对象,针对于DOM操作来说,Linq确实方便了不少,如 ...
- Linux 中 Vi 编辑器的简单操作
Linux 中 Vi 编辑器的简单操作 Vi 编辑器一共有3种模式:命名模式(默认),尾行模式,编辑模式.3种模式彼此需要切换. 一.进入 Vi 编辑器的的命令 vi filename //打开或新 ...
- python(pymysql)之mysql简单操作
一.mysql简单介绍 说到数据库,我们大多想到的是关系型数据库,比如mysql.oracle.sqlserver等等,这些数据库软件在windows上安装都非常的方便,在Linux上如果要安装数据库 ...
- ZooKeeper系列3:ZooKeeper命令、命令行工具及简单操作
问题导读1.ZooKeeper包含哪些常用命令?2.通过什么命令可以列出服务器 watch 的详细信息?3.ZooKeeper包含哪些操作?4.ZooKeeper如何创建zookeeper? 常用命令 ...
- ORACLE的安装与网页版创建表空间的简单操作以及PLsql的简单操作
1.oracle的安装: 安装简单易学,在这里不做解释.下载看装包后耐心等待,注意安装目录不要有中文字符,尽量按照指定目录进行安装.安装完成后会占用有大约5g的内存. 如果要卸载oracle,需要用其 ...
- C#反射技术的简单操作(读取和设置类的属性)
public class A { public int Property1 { get; set; } } static void Main(){ A aa = new A(); Type type ...
随机推荐
- 使用UIGestureRecognizer监听屏幕事件
转载自 http://blog.csdn.net/samguoyi/article/details/7911499 如果只是想获取屏幕点击事件有一个最简单的办法,就是写一个透明的uibutton覆盖 ...
- C++视频课程小结(2)
C++远征之离港篇 章节介绍: 每章小结: 第一章:大致讲了一下本章会讲的内容:引用vs指针.const vs #define(这个我在C里都没用过).函数变得更强大.内存管理要小心之类的. 第二章: ...
- 汇编语言程序入门实验二:在dos下建立子目录操作
汇编语言程序入门实验二:在dos下建立子目录操作 1,背景 在读此文,并读懂前,建议读者先阅读这两篇博客 1,在dos环境下汇编语言程序设计入门(输出hello world)和masm32的下载.安装 ...
- 阿里聚安全攻防挑战赛第三题Android PwnMe解题思路
阿里聚安全攻防挑战赛第三题Android PwnMe解题思路 大家在聚安全挑战赛正式赛第三题中,遇到android app 远程控制的题目.我们今天带你一探究竟,如何攻破这道题目. 一.题目 购物应用 ...
- c# abstract抽象类与继承类子类的构造函数_base
http://blog.itpub.net/9240380/viewspace-718054/ http://blog.163.com/cloud_thegreat/blog/static/10367 ...
- 解决WebService 中泛型接口不能序列化问题
本来要定义WebServices 方法返回一泛型接口集合IList,系统提示不能序列化泛型接口集合 1 [WebMethod] 2 public IList<Employ ...
- PL/pgSQL学习笔记之三
http://www.postgresql.org/docs/9.1/static/plpgsql-overview.html 39.1.2. Supported Argument and Resul ...
- arp:地址解析协议(Address Resolution Protocol)(来自维基百科)
地址解析协议(Address Resolution Protocol),其基本功能为通过目标设备的IP地址,查询目标设备的MAC地址,以保证通信的顺利进行。它是IPv4中网络层必不可少的协议,不过在I ...
- XPath具体解释
New Document 相关读书笔记.心得文章列表 一.结点类型 XPath中有七种结点类型:元素.属性.文本.命名空间.处理指令.凝视以及文档节点(或成为根节点). 文档的根节点即是文档结点:相应 ...
- Codeforces Round #260 (Div. 1) A - Boredom DP
A. Boredom Time Limit: 20 Sec Memory Limit: 256 MB 题目连接 http://codeforces.com/contest/455/problem/A ...