0

我使用 IB 创建了一些UIView对象并用于IBOutlet链接到我的代码。
下面的一些示例:

1.  IBOutlet  UIView *view1;

2.  IBOutlet  UIView *view1;  @property(retain)  UIView *view1;

3.  UIView *view1 ;  @property(retain) IBOutlet UIView *view1;

有什么不同 ?我应该release手动吗?
谢谢你的帮助。

4

4 回答 4

1

你应该手动删除它....

您的第三条语句将正常工作......因为 Xcode 从其属性声明而不是从内部类声明中识别 nib 控件。

(边课)

IBOutlet  UIView *view1;

接口生成器可能不会将其识别为 IBoutlet,因为它仅在类中声明。(类变量受保护)

IBOutlet  UIView *view1;  @property(retain)  UIView *view1;

接口生成器可能不会将其识别为 IBoutlet,因为它仅在类中声明。(类变量受保护)

3.  UIView *view1 ;  @property(retain) IBOutlet UIView *view1;

正确的方式界面生成器将识别它。当您从接口构建器连接引用出口时,它将显示它

于 2011-03-07T06:37:30.323 回答
0

请访问这里

于 2011-03-07T06:36:41.627 回答
0

您需要手动释放所有 IBOutlets

dealloc并将其设置为 nil unload

于 2011-03-07T06:36:47.353 回答
-1

您好,您可以手动在 dealloc 方法中释放它们。

- (void)dealloc {
  [view1 release];
  [view2 release];
  [super dealloc];

}
于 2011-03-07T06:38:12.967 回答