当手动加载视图时,开发人员仍然可以控制初始化,我们可以 Select 调用什么样的初始化器,设置什么样的变量等等.

从故事板序列加载视图时...那个初始值设定项怎么了?变量应该设置在哪里我希望视图加载后可用?

请帮我理解这里的顺序.这个类的实例是如何创建的,是谁创建的,我们如何干预并帮助它符合我们的喜好?

推荐答案

当从nib或故事板加载视图时,将调用其-initWithCoder:方法.与-initWithFrame:类似,-initWithCoder:是UIView的指定初始值设定项.如果要对UIView子类进行任何自定义初始化,那么应该确保这两种方法都能实现.一种常见的技术是添加一个从-initWithFrame:-initWithCoder:调用的通用初始化方法.有关更详细的说明,请参见my answerCustom view and implementing init method?.

请注意,-initWithFrame:的文档说明:

如果使用Interface Builder设计界面,则此方法是

Objective-c相关问答推荐

使用自动布局自定义纵横比

如何将 CGPoint 添加到 NSMutableArray?

如何创建 NSIndexPath:indexPathWithIndexes:length 所需的索引:

在 UITableViewCells 上显示复制弹出窗口的简单方法,如地址簿应用程序

具有匿名函数/块的 NSTimer?

如何在目标 C 中创建单例类

使用对象引用的 NSArray,我是显式释放数组中的所有对象还是仅释放数组本身?

Objective-C 的 Eclipse 插件?

iOS 内存分配 - 一个应用程序可以使用多少内存?

如何在 iPhone SDK 中使用自定义字体?

iPhone - 什么是重用标识符(UITableViewCell)?

反转 NSString 文本

如何对包含数字的 NSMutable 数组进行排序?

显示启动画面的时间超过默认秒数

使用单独的委托/数据源时的 UITableView 问题

通过情节提要加载时如何初始化视图?

最大 CGFloat 值是否有常数?

如何根据按钮按下重新加载/刷新 UIPickerView(带有新数据数组)?

未调用 cellForItemAtIndexPath 但 numberOfItemsInSection 调用

UiTextField 中的第一个字母小写