- 1、本文档共74页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
[计算机硬件及网络]尚乘教育苹果 iOS 开发培训课程 07 View Controllers
视图控制器(View Controllers )
范圣刚,princetoad@,
Quiz 和 QuizViewController 回顾
• 在第⼀个 session 的 Quiz 应⽤程序中,我们把所
有的代码都写在 QuizViewController 类中。这个类
的⼀个实例是 Quiz 应⽤的控制器
• 它有指向屏幕上的 labels 的指针,指向按钮的指
针,这些按钮被按下时会给它发送消息。还有指
向组成应⽤数据的模型对象的指针
• 对于界⾯只有⼀屏的 Quiz 应⽤,只有⼀个
controller 对象就⾜够了
• ⼤多数应⽤具有不⽌⼀个屏幕的界⾯,⽽且有⾮
常多的对象需要进⾏管理,设计 iOS 应⽤时最好
针对每⼀屏都有⼀个 controller
UIViewController
• ⼀个 UIViewController 实例专注在控制应⽤程序内的
⼀个单独的屏幕
• 每个 UIViewController 具有⼀个指向 UIView 或者
UIView ⼦类的实例的view 属性,这个 view 就是它
的 screen
• 通常情况下,这个 view 是⼀个全屏视图。⽽且更多
的时候,这个 view 也具有 subviews 。这样⼀个 view
controller 控制的就是⼀个view hierarchy
• 因为这个 view 属性是整个 hierarchy 的 root ,当 view
controller 的 view 被作为⼀个subview 添加到
window 时,整个 view hierarchy 就被添加了
创建 HypoTime
从 Empty Application 模版创建⼀个新
的 iOS 项⺫,命名为 HypnoTime 。
按右边的图进⾏配置:
两个 UIViewController 的⼦类
• 这个应⽤我们将创建两个 UIViewController 的⼦类
•HypnosisViewController
• TimeViewController
• 每个 view controller 将会控制⼀个 view ,⽤户将
能够在这些 views 之间切换,取决于他们是否想
被催眠或者只是想知道现在是⼏点
•view 之间的切换将会由另外⼀个类
UITabBarController 来处理
⼦类化 UIViewController
• 我们不会直接创建
UIViewController 的实
例,⽽是创建
UIViewController 的⼦
类来实例化
• ⽣成
HypnosisViewControlle
r (File - New File -
iOS - Cocoa Touch -
Objective-C class)
HypnosisViewController
•view controller 负责创建它的 view hierarchy
• HypnosisViewController 的 view hierarchy 将仅由
⼀个 view 组成。就是我们前⾯创建的 UIView 的
⼦类 HypnosisView
• 在 Finder ⾥定位到 HypnosisView.h 和
HypnosisView.m ⽂件,把他们拖到 HypnoTime 项
⺫导航器中
• 在出现的窗⼝中,勾选“Copy items into
destination group’s folder”
• 同时勾选把它们添加到 target - “HypnoTime”
添加 HypnosisView 到 HypnoTime
loadView
• UIViewController ⼦类通过重写 loadView ⽅法来创
建它的 view hierarchy
• 这个⽅法创建⼀个 view 的实例,并且把它设成
view controller 的view
• 在 HypnosisViewController.m 中重写 loadView ,确
保在⽂件顶部导⼊了 HypnosisView 的头⽂件
// 重写 loadView
- (void)loadView
{
// 创建
您可能关注的文档
最近下载
- 护理综合技能(第2版)PPT课件 基本护理技术-注射技术.pptx
- 高中数学:习题2:幂函数.doc
- 电力线路迁改工程施工组织设计(完整常用版).doc VIP
- 2023年江西省初中学业水平考试英语真题及答案.doc VIP
- 初中数学:鲁教版(五四制)数学【全八册】知识点总结 .pdf VIP
- LY_T 3314-2022 皂荚培育技术规程.docx
- 钻孔简易水文地质观测规程 .doc VIP
- 2025H1全球短剧营销白皮书.pdf VIP
- 阳光财产保险股份有限公司雇主责任保险条款2011版.pdf VIP
- 神经重症患者感染诊治_美国临床神经医学手册(2017-2018)与中国专家共识(2017)的对比与解读.pdf VIP
文档评论(0)