iOS开发系列-视图切换解释.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
iOS开发系列--视图切换 概述 在iOS开发中视图的切换是很频繁的,独立的视图应用在实际开发过程中并不常见,除非你的应用足够简单。在iOS开发中常用的视图切换有三种,今天我们将一一介绍: UITabBarController UINavigationController 模态窗口 UITabBarController iOS三种视图切换的原理各不相同: UITabBarController:以平行的方式管理视图,各个视图之间往往关系并不大,每个加入到UITabBarController的视图都会进行初始化即使当前不显示在界面上,相对比较占用内存。 UINavigationController:以栈的方式管理视图,各个视图的切换就是压栈和出栈操作,出栈后的视图会立即销毁。 UIModalController:以模态窗口的形式管理视图,当前视图关闭前其他视图上的内容无法操作。 UITabBarController是Apple专门为了利用页签切换视图而设计的,在这个视图控制器中有一个UITabBar控件,用户通过点击tabBar进行视图切换。我们知道在UIViewController内部有一个视图,一旦创建了UIViewController之后默认就会显示这个视图,但是UITabBarController本身并不会显示任何视图,如果要显示视图则必须设置其viewControllers属性(它默认显示viewControllers[0])。这个属性是一个数组,它维护了所有UITabBarController的子视图。为了尽可能减少视图之间的耦合,所有的UITabBarController的子视图的相关标题、图标等信息均由子视图自己控制,UITabBarController仅仅作为一个容器存在。 假设现在有一个KCTabBarViewController(继承于UITabBarController),它内部有一个KCWebChatViewController、一个KCContactViewController。 1.首先创建一个KCTabBarViewController继承于UITabBarController(代码是默认生成的,不再贴出来)。 2.其次创建两个子视图,在这两个子视图控制器中设置对应的名称、图标等信息。 KCWebChatViewController.m // // KCWorldClockViewController.m // ViewTransition // // Created by Kenshin Cui on 14-3-15. // Copyright (c) 2014年 Kenshin Cui. All rights reserved. // #import KCWebChatViewController.h @interface KCWebChatViewController () @end @implementation KCWebChatViewController - (void)viewDidLoad { [super viewDidLoad]; self.view.backgroundColor=[UIColor redColor]; //设置视图控制器标题 self.title=@Chat; //注意通过tabBarController或者parentViewController可以得到其俯视图控制器(也就是KCTabBarViewController) NSLog(@%i,self.tabBarController==self.parentViewController);//对于当前应用二者相等 //设置图标、标题(tabBarItem是显示在tabBar上的标签) self.tabBarItem.title=@Web Chat;//注意如果这个标题不设置默认在页签上显示视图控制器标题 self.tabBarItem.image=[UIImage imageNamed:@tabbar_mainframe.png];//默认图片 self.tabBarItem.selectedImage=[UIImage imageNamed:@tabbar_mainframeHL.png];//选中图片 //图标右上角内容 self.tabBarItem.badgeValue=@5; } @end KCContactViewController.m // // KCAlarmViewController.m //

文档评论(0)

知识宝库 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档