我遇到了一个问题,在几天内查看了许多答案。我的问题是,当我选择“配置文件>泄漏”在Xcode中时,我发现UILabel(CALayer)的Live Bytes一直在增加。这是正常的还是有泄漏?我该怎么办?当我更改类并返回具有这些标签的类时,它会不断变大。就像它们一遍又一遍地分配,但没有释放旧的。
我在头文件中设置了我的标签如下:
@property(weak,nonatomic)IBOutlet UILabel *lblNumbersSpelling1;
@property(weak,nonatomic)IBOutlet UILabel *lblNumbersSpelling2;
@property(weak,nonatomic)IBOutlet UILabel *lblNumbersSpelling3;
@property(weak,nonatomic)IBOutlet UILabel *lblNumbersSpelling4;
and ,
- (void)viewDidUnload
{
[super viewDidUnload];
self.lblNumbersSpelling1=nil;
self.lblNumbersSpelling2=nil;
self.lblNumbersSpelling3=nil;
self.lblNumbersSpelling4=nil;
self.lblRecordSayfasiNot=nil;
// Release any retained subviews of the main view.
}
我做了那个,但不确定在viewDidUnload方法中所做的是否必要。
我使用的是Xcode 5。
谢谢提前。
ARC
吗?如果是的话,你不需要做self.lbl.... = nil;
如果你没有使用ARC
,那么你不应该在viewDidUnload
中这样做,而是应该在dealloc
中完成。但我建议你转向使用ARC
,因为苹果公司真的开始推动开发者使用它了,而且在我看来,它使生活变得更加轻松。 - Popeye