-1
訪問對象時
我試圖訪問一個NSArray
,我莫名其妙地失敗(例如:我保存它,並從NSUserDefaults
加載):問題從NSArray中
節能:
-(id)init{
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
if ([defaults objectForKey:@"set1"] == nil){
NSMutableArray* aux =[[NSMutableArray alloc] initWithCapacity:8];
[aux addObject:@1];
[aux addObject:@2];
[aux addObject:@3];
[aux addObject:@0];
[defaults setObject:aux forKey:@"set1"];
[defaults synchronize];
[defaults setBool:TRUE forKey:@"sound"];
}
return [super init];
}
加載:
-(void)onEnter{
[super onEnter];
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
NSMutableArray* save = [[defaults arrayForKey:@"set1"] mutableCopy];
CCLOG(@"%@",save);
[_S1 showStars:((int)[save objectAtIndex:0])];
[_S2 showStars:((int)[save objectAtIndex:1])];
[_S3 showStars:((int)[save objectAtIndex:2])];
[_S4 showStars:((int)[save objectAtIndex:3])];
}
不知怎的,我失去了一些東西,我得到這個回報˚F ROM CCLOG(@"%@",save);
2014-10-29 16:15:32.155 IM[2091:70b] (
1,
2,
3,
0
)
從打印每個物體CCLOG(@"%i",((int)[save objectAtIndex:0]))
2014-10-29 16:15:32.156 IM[2091:70b] 176633792
2014-10-29 16:15:32.156 IM[2091:70b] 176633808
2014-10-29 16:15:32.157 IM[2091:70b] 159857616
2014-10-29 16:15:32.157 IM[2091:70b] 159857632
我已經嘗試了一些東西,沒有任何工程。
對不起,如果這是一個愚蠢的問題,我真的是新的Objective-C
。
NSArray元素是對象。沒有先將它們轉換爲整數,您無法將它們打印爲整數。將指針轉換爲int僅爲您提供指針的int視圖。 – 2014-10-29 19:25:19
@HotLicks是對的。您可以通過向每個對象發送'integerValue'來獲取整數值。 – Alladinian 2014-10-29 19:27:14
真棒,它的工作,謝謝! – 2014-10-29 19:40:29