2012-05-22 2 views
1

이 내가 놓친 게 정말 간단한 일이 아마, 액세스 설정에 아래의 코드를 사용할 때 이유는 무엇입니까 (null)NSUserDefaults는 (null)을 반환하는 기본값입니까?

- (void)updateUIForDistanceUnits { 
    NSUserDefaults *userDefaults = [NSUserDefaults standardUserDefaults]; 
    NSString *test = [userDefaults stringForKey:@"IDDistance"]; 
    NSLog(@"DISTANCE: %@", test); 
} 

같은 기본 값 반환 Root.plist

enter image description here

+1

[다중 값 유형 설정 번들 필드는 항상 null을 반환합니다.] (http://stackoverflow.com/questions/4784171/multivalue-type-settings-bundle-fields-alway-return-null) –

+0

감사합니다. 그. – fuzzygoat

답변

2

기본 Root.plist의 값은 값이 설정되지 않은 경우 UI에 표시되는 값이며 코드에서 동일한 작업을 수행하거나 응용 프로그램에서 [NSUserDefaults -registerDefaults]을 올바르게 설정해야합니다.

일단 Settings.app에서 값을 설정하면 NSUserDefaults이 올바른 값을 반환합니다.

관련 문제