응용 프로그램이 종료 될 때 저장할 두 개의 배열이 있습니다. 나는 이것을 애플 리케이션 델리게이트 내에서 NSUserDefaults를 사용하여 구현했다. 누구든지 내 코드를 살펴보고 잘못 된 것을 볼 수 있습니까? 그것은 전혀 작동하지 않습니다.응용 프로그램 대리인에 데이터 저장
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
workouts = [NSMutableArray arrayWithObjects:nil];
menu = [NSMutableArray arrayWithObjects:@"Home",nil];
workoutNames = [NSMutableArray arrayWithObjects:nil];
routinesMade = [NSMutableArray arrayWithObjects:nil];
test = [NSMutableArray arrayWithObjects:nil];
defaults = [NSUserDefaults standardUserDefaults];
self.workouts = [defaults objectForKey:@"workouts"];
self.menu = [defaults objectForKey:@"menu"];
self.workoutNames = [defaults objectForKey:@"workoutNames"];
self.routinesMade = [defaults objectForKey:@"routinesMade"];
return YES;
}
- (void)applicationWillTerminate:(UIApplication *)application
{
defaults = [NSUserDefaults standardUserDefaults];
[defaults setObject:workouts forKey:@"workouts"];
[defaults setObject:menu forKey:@"menu"];
[defaults setObject:workoutNames forKey:@"workoutNames"];
[defaults setObject:routinesMade forKey:@"routinesMade"];
[defaults synchronize];
}
Btw는 헤더 파일의 기본값을 선언했습니다. 고마워요!
널 (null)이 포함되어 있기 때문에 null를 재정의, 내가 첫 번째 방법에서 데이터를로드했습니다. –
NSMutableArrays를 할당/초기화 할 수 있습니까? 또한 동기화를 호출 할 때 배열이 저장되어 있는지 확인하십시오. – MichaelScaria