iOS开发入门基础(六):分栏控制器 UITabBarController使用方法

一、UINavigationController 和 UITabBarController 的区别

和导航视图控制器一样,UITabBarController也是用来控制和管理视图控制器的,它们都继承了UIViewController类。UITabBarController如图所示。

iOS开发入门基础(六):分栏控制器 UITabBarController使用方法

从上图中可以看到,UINavigationController和UITabBarController都是通过自定义的形式来创建的,在一般的项目中,开发者也大都是运用自定义的方式来制定与自身应用主题相符合的控制器,这样使得应用更加美观。

UINavigationController的管理是通过栈的形式,会有一层层的层级关系,在出栈之后,当前的视图就会卸载;而UITabBarController是以数组的形式将分栏信息添加到手机屏幕上,而且视图之间的关系是平级的,并没有上下层的关系,而且在切换视图时,其他的视图并不会移除,这是它们二者最主要的区别。

二、UITabController 的结构

iOS开发入门基础(六):分栏控制器 UITabBarController使用方法

和UINavigationController相对应,通常情况下二者分别位于屏幕的上下方。在UINavigationController中提到过,UIKit框架中有一个UIBarItem类,可以将该类的实例添加到导航栏控制器和分栏控制器中,其实添加方法和导航栏控制器的方法类似。

三、基本使用方法

UITabBarController通常是作为整个应用的根视图控制器,所以可以在屏幕载入时就显示分栏控制器。

UITabBarController是通过数组来管理视图控制器的实例的,因此,先实例化几个视图,保存在数组中,然后设置UITabBarController 的视图控制器为该数组即可。

例如实现的下图的内容。

iOS开发入门基础(六):分栏控制器 UITabBarController使用方法

其中 Tab Bar上有4个视图,分别是主页面、音乐页面、新闻页面和我的页面。先创建这4个页面视图控制器,然后将四个页面控制器 view1,view2,view3,view4 赋值给数组 arryViewController,再设置 TabBar 的 ViewController,最后将Tab Bar 设置为 根视图控制器。

iOS开发入门基础(六):分栏控制器 UITabBarController使用方法

四、UITabBarController 的常用属性

在TabBarController里面,放置的是多个TabBarItem组成的数组,而每一个TabBarItem则又对应了一个ViewController。

1、TabBarItem的使用方法和一些重要的属性

主要包括3个属性:

1) title:设置每一个分栏的名称;

2) image:设置每一个分栏上的图片;

3) badgeValue:设置tab右上角的小标,显示数量等等,这是一个字符串,作为角标。

使用方式:

view1.tabBrarItem.title=@"最受欢迎";

view1.tabBarItem.image= [UIImage imageNamed:@"分享"];

";

iOS开发入门基础(六):分栏控制器 UITabBarController使用方法

主要方法就是实例化使用:

第一种方法,使用系统

2、tab Bar 的默认尺寸

在iPhone中,TabBarController的默认高度是49,宽度是320,而item的尺寸则是30*30。

3、设置Item 图标

1)系统自带的图标

每个视图控制器都有 tabBarItem,用来赋值 UITabBarItem 的实例。UITabBarItem 的实例可以带系统图标,总共有12个。例如:

view1.tabBarItem=[[UITabBarItem alloc]initWithTabBarSystemItem:UITabBarSystemItemMore tag:1];

其它 的TabBarSystemItem 有:

UITabBarSystemItemHistory:历史

UITabBarSystemItemSearch:搜索

UITabBarSystemItemMore:更多

UITabBarSystemItemRecents:最近

UITabBarSystemItemContacts:联系人

UITabBarSystemItemFeatured:特征

UITabBarSystemItemTopRated:最热

UITabBarSystemItemBookmarks:书签

UITabBarSystemItemDownloads:下载

UITabBarSystemItemFavorites:最爱

UITabBarSystemItemMostRecent:最新的

UITabBarSystemItemMostViewed:看的最多的

2)自定义的图标

view1.tabBarItem=[[UITabBarItem alloc]initWithTitle:@"最受欢迎" image:[UIImage imageNamed:@"分享"] tag:1];

4、Item数量

而在iPhone中,TabBar中最多能容纳的Item为5个,如果超过了5个,它会自己集成一个更多的选项供用户选择和编辑,就是显示更多的,点击 More ,显示一个 More 带有 Edit 的界面,再选择 Edit就显示" Drag the icons to organize tabs",就是自定义 Tab,拖住图标到 bar 上。

iOS开发入门基础(六):分栏控制器 UITabBarController使用方法

五、UITabBarController和UInavigationController的集成

通常在IOS应用中,UITabBarController和UInavigationController这2个视图控制器会同时配合着使用,单独使用的情况很少。

一般地都是将 UITabarController作为根视图,而UInavigationController控制子视图。

比如,来控制 vew1

//此处添加导航控制器,装入 view1

UINavigationController *navigationController1 = [[UINavigationController alloc]initWithRootViewController:view1];

//定义导航控制器的左按钮,是一个加号

UIBarButtonItem *addButton = [[UIBarButtonItem alloc]initWithBarButtonSystemItem:UIBarButtonSystemItemAdd target:self action:nil];

[view1.navigationItem setLeftBarButtonItem:addButton animated:YES];

然后,将navigationController1代替 vew1,放入 arrayViewController 中去。

NSArray *arryViewController = @[ navigationController1,view2,view3,view4,view5,view6,view7];

显示效果如下。

iOS开发入门基础(六):分栏控制器 UITabBarController使用方法

完整代码如下:

iOS开发入门基础(六):分栏控制器 UITabBarController使用方法

iOS开发入门基础(六):分栏控制器 UITabBarController使用方法

iOS开发入门基础(六):分栏控制器 UITabBarController使用方法

展开阅读全文

页面更新:2024-03-05

标签:使用方法   控制器   赋值   数组   视图   图标   实例   属性   入门   尺寸   屏幕   形式   关系   页面   基础   方法   更多   科技

1 2 3 4 5

上滑加载更多 ↓
推荐阅读:
友情链接:
更多:

本站资料均由网友自行发布提供,仅用于学习交流。如有版权问题,请与我联系,QQ:4156828  

© CopyRight 2020-2024 All Rights Reserved. Powered By 71396.com 闽ICP备11008920号-4
闽公网安备35020302034903号

Top