iphone - IBOutlet 为零的问题

标签 iphone objective-c cocoa cocoa-touch

我的 EAGLView 类中有一个类“A”的实例,它在 EAGLView 的 initWithCoder 方法中实例化。

此类“A”包含 UIView 的 IBOutlet。

我在 Interface Builder 中还有一个此类“A”的实例,用于将类“A”IBOutlet 连接到相应的 View 。

因此类“A”被实例化两次,第一次由 Interface Builder 实例化,其中在 awakeFromNib 方法中,IBOutlet 工作正常。然而它再次被 EAGLView 实例化,这次连接到 UIView 的 socket 显然没有连接到 UIView,所以它是 nil。

从设计角度来看我可以做什么来避免这个问题? ,我真的尽力说得非常清楚,希望它足够清楚。

最佳答案

不要从 EAGLView 的 initWithCoder: 方法实例化类“A”。 NIB 加载程序已经为您创建了这个实例;你不应该再次创建它。您是否有理由认为需要在 initWithCoder: 中创建它?

关于iphone - IBOutlet 为零的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1243328/

相关文章:

iphone - 有没有办法替换已经定义的预处理器标识符?

iphone - 推文发送后如何显示?

iphone - iOS 应用程序缺少屏幕截图

cocoa - 如何检测任务控制或 Command-Tab 切换器取代了 OS X 中的程序?

macos - 将 NSImage 保存到 cocoa 沙箱应用程序的磁盘上 - CRASH

cocoa - 基于 Cocoa 应用程序的多窗口文档的最佳方法是什么?

iPhone返回按钮文本

iphone - 处理 iPhone 5 的较大设备尺寸

objective-c - 无法将 NSArray 写入文件

ios - CGImageRef 未在 ARC 下发布