小编Veg*_*ega的帖子

iOS - 管理IBOutlets内存的最佳方法是什么?

我一直在审查Apple文档和示例代码,以尝试确定管理IBOutlet内存的最佳方法.至少可以说,我有点困惑.

CurrentAddress示例代码将IBOutlets声明为属性:

@interface MapViewController : UIViewController <MKMapViewDelegate, MKReverseGeocoderDelegate>

{
    MKMapView *mapView;
    UIBarButtonItem *getAddressButton;
}
@property (nonatomic, retain) IBOutlet MKMapView *mapView;
@property (nonatomic, retain) IBOutlet UIBarButtonItem *getAddressButton;
Run Code Online (Sandbox Code Playgroud)

大.这些是在dealloc中发布的:

- (void)dealloc
{
    [mapView release];
    [getAddressButton release];
    [super dealloc];
}
Run Code Online (Sandbox Code Playgroud)

现在不应该将这些属性设置为分配?因为当设置为retain时,IBOutlet的保留计数将增加两次:一次加载nib时和另一次设置属性时?将这些属性设置为nil而不是在dealloc中释放不是更好吗?

iphone interface-builder iboutlet ios

10
推荐指数
1
解决办法
3596
查看次数

标签 统计

iboutlet ×1

interface-builder ×1

ios ×1

iphone ×1