這裏是我的問題:ViewDidLoad方法不保留一個變量?
在viewDidLoad
方法創建使用NSUserDefaults
一個變量(如果它的「第一跑」創建它,並NSNumber
填充它。然後我嘗試另一種方法來使用它,。什麼都沒有。它看起來像它的空。任何人都可以幫我嗎?地塊由於
- (void)viewDidLoad {
NSUserDefaults *defaults =[NSUserDefaults standardUserDefaults];
if ([defaults objectForKey:@"seriesBool"]!=nil)
{
seriesBool = [defaults objectForKey:@"seriesBool"];
}
else
{
int i;
seriesBool = [NSMutableArray arrayWithCapacity:9];
for(i=0; i<9; i++)
{
[seriesBool addObject:[NSNumber numberWithBool:YES]];
}
}
-(IBAction)toAction:(id)sender
{
NSLog(@"array: %@", seriesBool);
}
seriesBool是空的......
您是否使用ARC或MRR? – trojanfoe 2012-08-07 12:18:25
我認爲在這種情況下並不重要。由於他沒有使用強大的財產,也沒有保留iVar,所以iVar正在被釋放。 – 2012-08-07 12:21:52
@BrunoKoga你怎麼知道他沒有使用'strong'? – trojanfoe 2012-08-07 12:22:24