-1
如下所示的代碼,它不會讓我回退可變數組。我在我的可變數組中有3個註釋,但是一旦關閉了我的應用程序並再次打開它,它就會顯示我0個對象。我不知道爲什麼當我收回我的數組時,我正在獲取O對象!任何想法?NSMutableArray使用NSUserDefaults進行NSData轉換
-(void)viewDidLoad
{
NSUserDefaults *ud=[NSUserDefaults standardUserDefaults];
if([ud boolForKey:@"save-exist"])
{
NSMutableArray *udAnnotations=[[NSMutableArray alloc]initWithArray: [ud objectForKey:@"annotationsArray"]];
NSLog(@"%d",[udAnnotations count]);
}
else
{
[self addAnno];
}
}
-(void)addAnno
{
[mapView addAnnotations:annotationArray];
NSUserDefaults *ud=[NSUserDefaults standardUserDefaults];
[ud setObject:annotationArray forKey:@"annotationsArray"];
[ud setBool:YES forKey:@"save-exist"];
[ud synchronize];
}
你可以給一個提示如何將MKAnnotation歸檔爲NSData。我第一次聽到歸檔。對不起,我對這個環境很陌生! – casillas
順便說一句,有arrayForKey應該處理mutablearray,我錯了嗎?我剛剛從應用程序文件中獲得這些信息。 - (NSArray *)arrayForKey: (NSString *)defaultName – casillas
很高興你是「新環境」。我寫了一本關於iOS編程的書,可能會對您有所幫助。如果您在編程之前學習基礎知識,則不會提出被降低和關閉的問題。 – matt