Skip to Main Content
iOS 编程基础:Swift、Xcode 和Cocoa 入门指南
book

iOS 编程基础:Swift、Xcode 和Cocoa 入门指南

by Matt Neuburg
January 2017
Intermediate to advanced content levelIntermediate to advanced
552 pages
9h 43m
Chinese
China Machine Press
Content preview from iOS 编程基础:Swift、Xcode 和Cocoa 入门指南
Cocoa
事件
455
如,
viewDidLoad
会被调用以便让你知晓视图控制器已经获得了其主视图(即它的视图),
这样就可以进行初始化了;显然,这是个生命周期事件。
UIViewController
还有其他很
多生命周期事件,你可以重写它们对发生的事情进行控制。比如,
viewWillAppear:
示视图控制器的视图将会被放置到界面上;
viewDidAppear:
表示视图控制器的视图已经
被放置到了界面上;
viewDidLayoutSubviews
示视图已经在其父视图中定位了,诸如
此类。
我称
supportedInterfaceOrientations
之类的
UIViewController
方法为查询事件。你
的任务就是返回一个位掩码来告诉
Cocoa
,视图在某个时刻可以处于哪个方向。你相信
Cocoa
会在恰当的时刻调用这个方法,这样如果用户旋转了设备,应用的界面就会根据
返回值决定旋转还是不旋转。
在寻找通过子类化可以接收到的事件时,请记得沿着继承体系向上查找。比如,如果想
知道在将自定义
UILabel
子类嵌入另一个视图时如何收到通知,你不应该在
UILabel
文档中寻求答案;
UILabel
是个
UIView
,因此它会接收到恰当的事件。在
UIView
类文
档中,你会发现可以通过重写
didMoveToSuperview
以便在这种情况下接收到通知。同样,
还要记得沿着所使用的协议向上查找。如果想知道当视图控制器的视图将要旋转时该如
何收到通知,你不应该在
UIViewController
类文档中寻求答案
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Start your free trial

You might also like

机器学习实战:基于Scikit-Learn、Keras 和TensorFlow (原书第2 版)

机器学习实战:基于Scikit-Learn、Keras 和TensorFlow (原书第2 版)

Aurélien Géron
Swift 人工智能实战:从基础理论到AI 驱动的应用程序开发

Swift 人工智能实战:从基础理论到AI 驱动的应用程序开发

Mars Geldard, Jonathon Manning, Paris Buttfield-Addison, Tim Nugent

Publisher Resources

ISBN: 9787111556350