概述:
UITabbarController 和 UINavigationController类似, UITabBarController也可以轻松地管理多个控制器, 实现控制器器之间的切换, 当标签控制器管理的视图控制器数量超过
5个后, 会以更多的形式,展示更多的标签, 并且此时还有编辑功能, 用以实现其所管理的导航控制器的位置变换.
UITabBarController 有两个子视图: Tabbar/ custom Content
使用步骤:1> 创建对象; 2> 添加所管理的视图控制器器;
1. UITabBarController
1.1 基本属性
@property(nonatomic, assign) id< UITabBarControllerDelegate > delegate (跟踪过tabBar中 items 的改变)
@property(nonatomic, readonly) UITabBar *tabBar
|
@property(nonatomic, copy) NSArray *viewControllers
- (void)setViewControllers:(NSArray *)
viewControllers
animated:(BOOL)
animated
@property(nonatomic, copy) NSArray *customizableViewControllers
(我们可以通过设置UITabBarController的customizableViewControllers属性来指定viewControllers的一个子集,即只允许一部分viewController是可以放到tabBar中显示的。但是这块儿要注意一个问题就是每当UITabBarController的viewControllers属性发生变化的时候,customizableViewControllers就会自动设置成跟viewControllers一致,即默认的所有的viewController都是可以编辑的,如果我们要始终限制只是某一部分可编辑的话,记得在每次viewControlles发生改变的时候,重新设置一次customizableViewControllers。)
@property(nonatomic, readonly) UINavigationController *moreNavigationController (更多 标签的标准导航控制器)
|
@property(nonatomic, assign) UIViewController *selectedViewController
@property(nonatomic) NSUInteger selectedIndex
选中状态
|
1.2 常用方法
UITabBarController的Rotation
UITabBarController默认只支持竖屏,当设备方向放生变化时候,它会查询viewControllers中包含的所有ViewController,仅当所有的viewController都支持该方向时,UITabBarController才会发生旋转,否则默认的竖向。
此处需要注意当UITabBarController支持旋转,而且发生旋转的时候,只有当前显示的viewController会接收到旋转的消息
2. tabBar
2.1 概述
管理标签控制器管理的视图控制器的tabBarItem, 应用于标签控制器, 其可自定义的范围主要在通过一些属性实现外观的自定义.
2.2 基本属性
@property(nonatomic) UIBarStyle barStyle | 风格 |
@property(nonatomic, retain) UIColor *barTintColor | 表面着色 |
@property(nonatomic) CGFloat itemSpacing | 标签间距 |
@property(nonatomic) CGFloat itemWidth | 标签宽度 |
tintColor | |
背景图片 | |
@property(nonatomic, getter=isTranslucent) BOOL translucent | 半透明 |
3. tabBarItem
3.1 概述
标签条所管理的, 从属于视图控制器的属性. 管理着三块内容: title/ image/ badgeValue
初始化方法:
3.2 基本属性
@property(nonatomic, copy) NSString *badgeValue | 标记值 |
- (
UIOffset
)
titlePositionAdjustment
- (
void
)
setTitlePositionAdjustment:
(
UIOffset
)
adjustment
| title 和 选中状态的image |