iPhone
응용 프로그램에서 NSUserDefaults
의 배열을로드하려고합니다.왜 NSUserDefaults에서 배열을로드 할 때 응용 프로그램이 충돌합니까?
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
self.myarray_1 = nil;
하지만 다음 줄에 내 응용 프로그램 충돌 :이 코드와 함께 일을 설정
*** Terminating app due to uncaught exception 'NSInvalidArgumentException',
reason: '-[NSCFString count]: unrecognized selector sent to instance 0x796c710'
가 어떻게이 문제를 해결할 수있는 오류가있는
self.myarray_1 = [[NSMutableArray alloc]
initWithArray: [defaults objectForKey:@"highscores"]];
?
비욘 (Bjorn)이 지적한 것 외에도, 당신은 'self.myarray_1'에 대한 할당에서 NSArray를 유출하고 있습니다. 거기에 배열을 할당하지 말고 자동 배열 된 인스턴스를 다시 얻으려면'-arrayWithArray :'를 사용하십시오. 또한'myarray_1'는 표준 코코아 명명 규칙을 따르지 않습니다. 'highScoresArray' 또는'highScores'와 같은 것을 사용할 것을 제안 할 수 있습니까? –