使用目标c以编程方式初始化故事板中的对象

时间:2011-12-29 14:23:16

标签: objective-c uiimageview initialization

我的UIImageView视图中有一个viewController对象,预装了方向盘图片。但是,车轮的旋转由一天中的时间决定。因此,当程序启动时,我喜欢通过当前时间的正确旋转基础来初始化轮子。我尝试在控制器的viewDidLoad方法中进行旋转。虽然这有效,但可以根据时间明显地看到初始位置和切换到新位置。

我喜欢初始化是不可见的,即在加载视图之前进行的初始化。我应该在哪里做?

2 个答案:

答案 0 :(得分:2)

  

我喜欢初始化是不可见的,即初始化   在加载视图之前发生。我应该在哪里做?

只要访问控制器的view属性,就会加载视图控制器的视图,并在此时调用-viewDidLoad。设置代码以在-viewDidLoad中设置视图是正确的做法。您无法在加载视图之前初始化视图,因为它在加载之前不存在,但您应该能够在显示之前进行设置。

如果您在-viewDidLoad中没有做任何会导致轮盘设置延迟到以后某个时间点的任何内容,那么您可能会尝试稍早加载视图控制器的视图。例如,您可以在视图控制器中实现-prepareForSegue:sender:,以便它访问view属性,这将导致视图被加载。

答案 1 :(得分:0)

您还可以创建一个继承自UIView的自定义类,并在didMoveToWindow方法中设置一些自定义内容(在您的情况下设置旋转变换)。