【发布时间】:2011-06-02 12:50:52
【问题描述】:
我有一个在 XIB 文件中实例化的 UIView 子类。我需要它来做一些初始化(设置一些变量并创建一个子视图)。
但是,我并不总是通过 Interface Builder 实例化此视图。我也以编程方式进行。在这两种情况下,初始化需要相同。
我指定的初始化器是initWithValues:。
问题是; 在哪里进行初始化?
由于我必须在 2 个不同的位置执行它,我想我需要在一个单独的 initialize 方法(或类似的方法)中重构它,并从 initWithValues: 调用它。
但是当从 IB 加载时,initWithCoder: 和 awakeFromNib 都会被调用。我必须通过哪种方法调用initialize?还是我必须从initWithCoder: 调用initWithValues: 而在awakeFromNib 中什么也不做?
【问题讨论】:
标签: iphone objective-c cocoa-touch uikit