UIKit框架(13)标签控制器UITabBarController

  • 标签控制器UITabBarController介绍

跟UINavigationController类似,UITabBarController也可以轻松地管理多个控制器,轻松完成控制器之间的切换,典型的例子就是QQ、微信等应用。

底部包含一个UITabBar标签栏,点击标签栏上的按钮实现页面的切换

  • 代码使用UITabBarController

UITabBarController包含一个控制器数组:

@property(nonatomic, copy) NSArray *viewControllers

通过该属性设置管理的所有控制器页面,同时在标签栏上设置对应的切换按钮

如:

UITabBarController * tbc = [[UITabBarController alloct] init];
self.window.rootViewController = tbc;

UIViewController * vc1 = [[UIViewController alloc] init];
vc1.view.backgroundColor = [UIColor redColor];
UIViewController * vc2 = [[UIViewController alloc] init];
vc1.view.backgroundColor = [UIColor yelloColor];
UIViewController * vc3 = [[UIViewController alloc] init];
vc1.view.backgroundColor = [UIColor blueColor];

tbc.viewControllers = @[vc1, vc2, vc3];

UITabBarController包含一个标签栏UITabBar:

@property(nonatomic, readonly) UITabBar *tabBar

和导航控制器类似,标签控制器包含数据条目数组:

@property(nonatomic, copy) NSArray *items

条目为UITabBarItem

@property(nonatomic, retain) UITabBarItem *tabBarItem

UITabBarItem的属性有:

@property(nonatomic, retain) UIImage *image
@property(nonatomic, copy) NSString *title
@property(nonatomic, retain) UIImage *selectedImage
@property(nonatomic, copy) NSString *badgeValue

UIViewController的tabBarController属性能够访问所属的标签控制器:

@property(nonatomic, readonly, retain) UITabBarController *tabBarController

控制器页面的切换方式:

1)用户触摸标签栏上对应切换按钮,能够自动切换到对应的控制器页面

2)也可以通过UITabBarController的selectedIndex进行切换

@property(nonatomic) NSUInteger selectedIndex
  • storyboard使用UITabBarController

右击UITabBarController为view controllers拖线连接多个子控制器即可。

设置后的子控制器,都有一个tabBar,可以选择自控制器中的tabBarItem进行属性设置

  • App主流框架说明

App的主流框架:

根控制器是UITabBarController,每个子控制器又是UINavigationController

子控制器如果是导航控制器,使用导航控制器再进行页面切换时,需要隐藏标签栏

通过UIViewController的属性设置这种行为:(目的控制器)

@property(nonatomic) BOOL hidesBottomBarWhenPushed
时间: 2024-11-05 00:45:01

UIKit框架(13)标签控制器UITabBarController的相关文章

iOS基础-UIKit框架-多控制器管理-UITabBarController

UITabBarController UITabBarController的简单使用 一.UITabBarController的创建(利用代码)1.新建一个空项目,在MJAppDelegate.m的didFinishLaunch...方法中//1.创建tabbar控制器UITabBarController *tabbarVc = [[UITabBarController alloc] init]: //2.设置为window的根控制器self.window.rootViewController

【iOS开发-28】制造UITabBarController标签控制器的过程以及定制UITabBarItem文字图片的6种方式

一.一个简单的创造过程(实际项目不推荐这种方式,仅做演示理解原理用) 在AppDelegate.m中: - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { //创建一个到导航控制器 UIViewController *vc1=[[UIViewController alloc]init]; UINavigationControll

iOS开发中标签控制器的使用——UITabBarController

正文 iOS开发中标签控制器的使用——UITabBarController 一.引言 与导航控制器相类似,标签控制器也是用于管理视图控制器的一个UI控件,在其内部封装了一个标签栏,与导航不同的是,导航的管理方式是纵向的,采用push与pop切换控制器,标签的管理是横向的,通过标签的切换来改变控制器,一般我们习惯将tabBar作为应用程序的根视图控制器,在其中添加导航,导航中在对ViewController进行管理. 二.创建一个标签控制器 通过如下的步骤,我们可以很简便的创建一个TabBarCo

标签视图控制器UITabBarController

标签视图控制器 UITabBarController FirstViewController*first = [[FirstViewController alloc] init]; //创建一个UITableBarItem对象,作为first的 tabBarItem属性 //选中与不选中图片可以一样,可以不一样 UITabBarItem *item = [[UITabBarItem alloc] initWithTitle:@"第一" image:[UIImage imageNamed

UITabBarController 标签控制器

创建标签控制器    UITabBarViewController * TVC = [[UITabBarViewController alloc]init]; //初始化    self.window.rootViewController = TVC;    [TVC release];

集合视图控制器(CollectionViewController) 、 标签控制器(TabBarController) 、 高级控件介绍

  1 创建集合视图,设置相关属性以满足要求 1.1 问题 集合视图控制器UIConllectionViewController是一个展示大量数据的控制器,系统默认管理着一个集合视图UICollectionView,功能几乎和UITableViewController差不多,能够以多行多列的形式展示数据. 集合视图UICollectionView继承至UIScrollView,也同tableView一样有两个协议,分别是UICollectionViewDataSource数据源协议和UIColl

UIKit框架各个类的简介

1.UIAcceleration: 被叫做加速事件的一个UIAcceleration类的实例是用来代表即时的三维加速数据.为了接收重力加速度,要注册一个应用应用程序作为一个共享UIAccelerater对象的委托对象(参考UIAcceleromete类). 2. UIAccelerater: UIAccelerater类可以让你的寄存器接收到从板载硬件上得到的加速相关数据.当设备移动时,它的硬件能够报告沿主线在三维空间中的线性加速度变化.你可以利用这些数据来检测器件的电流方向和该方向的瞬时变化.

iOS UIKit框架

1. 简介: UIKitk框架提供一系列的Class(类)来建立和管理iPhone OS应用程序的用户界面( UI )接口.应用程序对象.事件控制.绘图模型.窗口.视图和用于控制触摸屏等的接口.(PS1: 可以认为是操纵界面的一个API库)(PS2: UIKit框架是用在iOS平台上与之对应的是MAC OS X上的Application Kit,二者是姐妹框架,作用和目的没啥太大区别(我没有说实现目的的过程也一样),表混淆了) 2. 框架的入口: #import <UIKit/UIKit.h>

iOSDay32之UIKit框架-可视化编程-XIB

1. Interface Builder 可视化编程 1> 概述 GUI : 图形用户界面(Graphical User Interface, 简称GUI, 又称图形化界面) 是指采用图形方式显示的计算机操作用户界面. Interface Builder (简称IB) : 是MAC OS X 平台下用于设计和测试图形用户界面 (GUI) 的应用程序.代码 和 IB 都可以生成 GUI. 优势: IB 能使开发者简单快捷的开发出符合Mac系列操作系统的GUI.通常你只需要通过简单的拖拽操作来构建U