내 앱에서 plist를 작동하는 데 문제가 있습니다. 사용자 지정 파일을 만들었으며이 파일을 문서 폴더에 복사하면 값을 추가 할 수 있습니다. 나는 지금까지 모든 것을 설정했고, 모든 것을 값으로 편집하고 모든 값을 저장하면, 내가 방금 저장 한 것이 무엇인지 어떻게 변하는 것인가, 모든 것이 잘 나타나고 있습니다. 내가이 문제를 해결하기 위해 솔기를 잡으면 서이 문제에 조금 미치게 될 것이지만 그것은 계속 실패한다. 배열 항목 0 - - 사전 설정 - 문자열 값 - 또한 내 PLIST 형식은 루트입니다 문자열 항목 1 - 사전 설정 - 문자열 값 - 문자열 항목 1 - 사전 설정 - 문자열 값 - 문자열 OtherValue - 문자열Plist NSMutableArray 및 NSMutableDictionary 문제
루트 파일 용 변수 NSMutableArray * settingsArray;
응용 프로그램이 테이블 뷰에 있고 텍스트 상자가 하나 인 세부 정보보기가 있습니다. cellForRowAtIndexPath에있어서, 상기 방법 didselectrowatindex 내부
// Configure the cell.
cell.textLabel.text = [[self.settingsArray objectAtIndex:indexPath.row] objectForKey:@"Setting"];
return cell;
내부
-(void)viewdidload{
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];
NSString *path = [documentsDirectory stringByAppendingPathComponent:@"settings.plist"];
NSMutableArray *tmpArray = [[NSMutableArray alloc] initWithContentsOfFile:path];
self.settingsArray = tmpArray;
[tmpArray release];
}
drinkDetailViewController.settingsDictionary = [self.settingsArray objectAtIndex:indexPath.row];
Detailview 변수 detailview viewwillappear의 방법에서
NSMutableDictionary *settingsDictionary;
NSMutableArray *settingValArray;
settingNamelabel.text = [settingsDictionary objectForKey:@"Setting"];
valueTextField.text = [settingsDictionary objectForKey:@"Value"];
이것은이 문제는 당신의 저장 방법, 당신이 사전의 전체 배열에 대해 "값"에 대한 값을 설정하는 것입니다, 그리고 개인 사전을위한 방법을
- (IBAction) save: (id) sender {
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];
NSString *path = [documentsDirectory stringByAppendingPathComponent:@"settings.plist"];
NSMutableArray *tmpArray = [[NSMutableArray alloc] initWithContentsOfFile:path];
self.settingValArray = tmpArray;
[settingValArray setValue:valueTextField.text forKey:"Value"];
[settingValArray writeToFile:path atomically:YES];
}
감사 : 당신이 주변에 특정 사전의 인덱스를 유지하는 경우
, 당신은 뭔가를 할 수 있습니다. 나는 내가 그런 것을해야한다는 것을 알았지 만 코드에 대해서는 확신 할 수 없었다. –