UITabBarController 标签栏控制器

接上篇导航控制器UINavigationController

接下来是UITabBarController 标签栏控制器

先来看一下UITabBarController的结构

UITabBarController 标签栏控制器

从图上可以看出控制器分为两部分,一部分是用户自定义内容Customcontent

另一部分为标签栏Tab bar.

另外看途中标签栏内有四个标签,每一个标签都控制着一个视图控制器

一、UITabBarController遵守的协议

UITabBarControllerDelegate

@property(nonatomic,assign)

id<UITabBarControllerDelegate>delegate

创建初始化类后会自动生成一个委托对象,用于调动自身

二、      实例方法

- (void)setViewControllers:(NSArray*)viewControllersanimated:(BOOL)animated

设置标签栏中的内容,可以看到参数是一个由视图控制器组成的数组,设置成功后数组中的第一个元素会在标签栏中最左端的位置上,第二个元素就紧挨这第一个元素右边,以此类推。

有一点是当你的标签栏中原本已经存在一些元素,在使用这个方法时,标签栏中的元素全部都要移除,然后加载新元素。

三、标签栏的一些特点

1、标签栏默认的只能最多有五个标签,当你设置的元素超过五个,这时前四个标签还是按顺序排列,但是第五个标签会变成“…”这样一个按钮,这个按钮包含这你剩下的元素

2、另外看下面一段话

You can use navigation controllers or custom view controllersas the root view controller for a tab. If the root view controller is a navigationcontroller, the tab bar controller makes further adjustments to the size of thedisplayed navigation content so that it does not overlap the tab bar.

意思就是你也可以用导航控制器作为标签栏的一个标签,便签栏会为导航控制器创造足够的空间来展示控制视图。

写给自己,如有错误请指正,共同学习。—— LC

上一篇:使用MvcPager实现Ajax分页


下一篇:iOS开发UI篇—UITabBarController生命周期(使用storyoard搭建)