0

我有一些 UILabel 已被声明为属性并合成。我将这些标签隐藏在viewDidLoad. 经过一些计算,当我尝试使用hidden属性取消隐藏它们时,应用程序崩溃并出现主题中提到的错误。我试图NSLog知道它是否已被释放,但它向我展示了标签的精细值。请有人可以帮助我,当我正常访问它时,内存管理问题在哪里。谢谢。

显示一些代码供参考:

在 .h 文件中:

@interface abc : UIViewController{
   UILabel *value;
}

@property(nonatomic,retain) IBOutlet UILabel *value;

在 .m 文件中:

@synthesize value;

-(void) viewDidLoad
{
value.hidden = YES;
}

-(IBAction) calculate:(id)sender

//On some button click, assign some value to label and unhide it

NSLog(@"%@",value); //perfectly OK
value.hidden = NO; //throws exception here

} 
4

1 回答 1

0

该错误是因为标签被释放并被分配给NSString. 检查您如何为标签设置值。当在参数上调用 hidden 属性时,您应该分配一个NSStringto UILabelwhich 导致它抛出此错误。value

于 2012-11-28T02:12:36.633 回答