TabBarController
1.两种方式创建系统TabBarController
-(id)init{
self = [super init];
if( self )
{ //newTask
HSNewTaskViewController *newsTaskVc = [[HSNewTaskViewController alloc] init];
[self addChildViewController:newsTaskVc title:@"新任务" normalImage:@"tabbar_NewTask_normal" selectImage:@"tabbar_NewTask_select"];
//actioning
HSProcessingViewController *actioningVc = [[HSProcessingViewController alloc] init];
[self addChildViewController:actioningVc title:@"进行中" normalImage:@"tabbar_processing_normal" selectImage:@"tabbar_processing_select"];
//completed
HSCompletedViewController *completedVc = [[HSCompletedViewController alloc] init];
[self addChildViewController:completedVc title:@"已完成" normalImage:@"tabbar_completed_normal" selectImage:@"tabbar_completed_select"]; }
return self;
} /**
* 添加一个子控制器
*
* @param childVc 子控制器对象
* @param title 标题
* @param imageName 图标
* @param selectedImageName 选中的图标
*/
- (void)addChildViewController:(UIViewController *)childController title:(NSString *)title normalImage:(NSString *)normalImage selectImage:(NSString *)selectImage{ childController.tabBarItem.title = title;
[childController.tabBarItem setTitleTextAttributes:@{NSFontAttributeName:[UIFont systemFontOfSize:11.0]}
forState:UIControlStateNormal];
[childController.tabBarItem setTitleTextAttributes:@{NSFontAttributeName:[UIFont systemFontOfSize:11.0],
NSForegroundColorAttributeName:[UIColor colorWithRed:/255.0 green:/255.0
blue:/255.0 alpha:1.0]}
forState:UIControlStateSelected]; childController.tabBarItem.image = [[UIImage imageNamed:normalImage] imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal];
childController.tabBarItem.selectedImage = [[UIImage imageNamed:selectImage] imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal]; [self addChildViewController:childController];
//第二种添加方式
// self.viewControllers=@[c1,c2,c3,c4];
}
TabBarController的更多相关文章
- 从tabBarController的一个item上的控制器跳转到另一个item上的控制器
先从习惯性的tabBarController开始,很多应用的外框都是用这个开始的,而从tabBarController的一个item上的控制器跳转到另一个上的,往往都是直接通过点击tabBar上的不同 ...
- 整合TabBarController与NavigationController
一.项目结构 一开始创建一个空的项目
- storyboard tabbarcontroller设置tab的图片
在storyboard里逐项设置了图片,咦,怎么是颜色?别急,慢慢来 找到你的tabbarcontroller指向的viewcontroller,在viewdidload里做如下事,搞定 - (voi ...
- iOS:CYLTabBarController【低耦合集成TabBarController】
导航 与其他自定义TabBarController的区别 集成后的效果 项目结构 使用CYLTabBarController 第一步:使用CocoaPods导入CYLTabBarController ...
- 使用TabBarController(代码实现)
step01:使用Xcode创建一个项目 step02:填写项目必要信息 step03:检查文件结构树是否正确 step04:创建一些类,这些类将会在后面用到!(选择Swift File) step0 ...
- app整体搭建环境:tabBar切换不同控制器的封装(自定义导航+自定义uiviewcontroler+系统自带tabbar+自定义tabbarController)
首先,一个app的搭建环境非常重要.既要实现基本功能,又要考虑后期优化的性能. 现在很多应用不仅仅是系统自带的控制器,由于需求复杂,基本上需要自定义多控制器来管理. 新建一个BasicNavigati ...
- iOS 在使用UINavigationController和TabBarController时view的frame
可能是以前记错了,总认为在ios6上使用了UINavigationController或者TabBarController会因为多了bar而影响子controller的view的frame大小.今天在 ...
- iOS开发 tabBarController选中状态
self.tabBarController.selectedIndex = 0; // 默认是0:
- 自定义TabBarController报错 - Unbalanced calls to begin/end appearance transitions for <>
自定义了TabBarController 之后必须实现以下方法才能避免报错 -(void)viewWillAppear:(BOOL)animated { [self.selectedViewContr ...
随机推荐
- UIModalPresentationStyle和UIModalTransitionStyle
一.主要用途 弹出模态ViewController是IOS变成中很有用的一个技术,UIKit提供的一些专门用于模态显示的ViewController,如UIImagePickerController等 ...
- sqlite原子提交原理
英文地址 文章参考 简介 支持事务的数据库系统如sqlite的一个重要特性是原子提交(atomic commit).也就是在一个事务中进行的对数据库的写操作要么全部执行,要么全部不执行.看起来像是对数 ...
- iOS--通讯录(UITableViewController)
本文主要实现通讯录的部分功能(分组名.索引.分组的组名)等等功能: 废话不多说了,先上效果图: 在工程中需要导入一个plist文件,文件图如图: 工程目录文件如图: 工程程序如图所示: RootTab ...
- IOS开发之开发者账号遇到的bug
今天使用开发者账号过期的问题,文件显示 其实今天的问题和这个没有关系,即使上面显示此证书的签发者无效,有时候也是可以用的. 我这里情况比较奇葩,刚刚生成的开发者账号,显示还是"......无 ...
- php 图片上传 使用微秒做文件名
$m = microtime ();$mtime = explode(' ' ,$m);$mtime1 = $mtime[1];$mtime2 = substr($mtime[0], 2, 6);$p ...
- 面试问题4:C语言预处理包括哪些
问题描述:C语言 预处理包括哪些操作 C语言的三种预处理包括:宏定义(#define).文件包含(#include).条件编译(#if.#else.#endif). 对于宏定义的介绍: 宏定义必须写在 ...
- 体验最火的敏捷——SCRUM(厦门,2014.1.4)
1.概述SCRUM是当前最火的一种敏捷开发方法,有用户故事.冲刺.燃尽图等很多很酷的玩法,有牛B的产品负责人.SCRUM Master,有超强的自组织团队.本沙龙将为您展现当前最火最酷的敏捷开发方法! ...
- WPF学习之路(七)应用程序和窗口
手动创建应用程序 1.创建Empty Project 2.添加引用 3.添加 ManualApp.cs 并添加下面的代码 [STAThread] public static void Main() { ...
- html中相似的标签、属性的区别
[1]<i></i> 和 <em></em>标签 相同:都是表示斜体. 区别: (1)<em>表示被强调呈现的内容,<i>是物理 ...
- JAVA 8 Optional类介绍及其源码
什么是Optional对象 Java 8中所谓的Optional对象,即一个容器对象,该对象可以包含一个null或非null值.如果该值不为null,则调用isPresent()方法将返回true,且 ...