NSUserDefaults를 권하고 싶습니다. 확실히 쉽습니다. 필자는 개발자로 편집 할 수있는 정적 데이터에만 plist 파일을 사용하는 경향이 있지만 응용 프로그램에서는 읽기 전용 (예 : 포함 된지도 이미지의 개체 좌표)으로 원합니다.
설명에서 NSDictionary를 포함하는 NSArray를 저장하고 싶을 것입니다.
// Get the user defaults object
NSUserDefaults *userDefaults = [NSUserDefaults standardUserDefaults];
// Load your bookmarks (editable array)
NSMutableArray *bookmarks = [[NSMutableArray alloc]init];
NSArray *bookmarksLoaded = [userDefaults arrayForKey:@"bookmarks"];
if (bookmarksLoaded != nil) {
[bookmarks initWithArray:bookmarksLoaded];
} else {
[bookmarks init];
}
// Add a bookmark
NSMutableDictionary *bookmark = [NSMutableDictionary new];
[bookmark setValue:@"value" forKey:@"name"];
[bookmark setValue:@"value" forKey:@"description"];
[bookmark setValue:@"value" forKey:@"code"];
[bookmarks addObject:bookmark];
// Save your (updated) bookmarks
[userDefaults setObject:bookmarks forKey:@"bookmarks"];
[userDefaults synchronize];
// Memory cleanup
[bookmarks release];
감사합니다. 어떻게 설정해야합니까? 내가 선택한 테이블 뷰에 버튼이 있다고 말하면, 북마크 배열에 추가하고 싶습니다. 저장하고자하는 문자열'name','description','code'가 있습니다. 일단 저장되면 NSUserDefaults에서 배열을로드하는 방법이 필요합니다. –
내 답변을 업데이트했습니다 – Johnus
'*** 북마크가 addObject : bookmark];에서'*** 캐치되지 않은 예외로 인해 응용 프로그램 종료 중 'NSInvalidArgumentException'오류가 발생했습니다. 이유는 다음과 같습니다. '*** - [NSMutableArray count] : 초기화되지 않은 가변 배열 객체로 전송 된 메소드 ' –