2011-02-28 35 views
0

Iv一直在这个问题上拖了很久,但我只是无法弄清楚。令人困惑的关于IBOutlets的错误

在视图中如果我尝试对由IBOutlet连接的imageView进行一些更改,则视图控制器的Load方法无法响应。它根本不响应对IBOutlet元素进行的任何更改。例如:如果我在IB中有一个imageView,并且它通过一个IBOutlet连接,并且我尝试设置此ImageView的隐藏属性,它不响应。为什么这是超越我的。

然后,我将imageView添加到另一个视图,并将该组合作为子视图添加到此视图。然后我可以修改这个imageView元素。但是,如果我尝试在viewDidLoad以外的其他方法中访问此imageView,则应用程序会崩溃。 imageView是一个实例变量。

+0

您的ImageView属性是如何定义的?你保留它吗?例如@property(retain,nonatomic)IBOutlet ImageView * imageView – occulus 2011-02-28 16:16:55

+0

您是否检查过您尝试与其交互的地方您的ImageView属性是否为非null?发送给nil对象的消息(也称为“方法调用”)在Objective C中没有错误就消失了,给人的印象是没有任何错误,但是你期望发生的事情不会发生。 – occulus 2011-02-28 16:18:14

+1

向我们展示一些代码:) – deanWombourne 2011-02-28 16:35:45

回答

0

最可能的解释是imageView在IB中没有连接。由于应用程序在访问时崩溃,IBOutlet可能连接到另一个对象,而不是仅仅是空的。