2012-04-24 3 views
0

이 bool이 저장되지 않는 이유를 이해할 수 있도록 도와 주실 수 있습니까? 여기 BOOL이 사용자 기본값에 저장되지 않음

이보기에 내 코드가로드 한 것입니다 : 응용 프로그램 위임 아래 applicationDidFinishLaunching에서

[appDelegate.defaults setBool:YES forKey:@"testKey"]; 
[appDelegate.defaults synchronize]; 
NSLog (@"TEST BOOL VALUE = %@", [appDelegate.defaults boolForKey:@"testKey"] ? @"YES" : @"NO"); 

를,이 같은 appdelegate.defaults 정의 : 왜이 ​​작동하지 않습니다

self.defaults = [NSUserDefaults standardUserDefaults]; 

솔직히이 몰라.

감사합니다.

+0

defaults 속성을 설정

시도해보십시오 NSSlog을 추가하는 것을 확인 'defaults'? 양수인? –

+1

'defaults' 속성을 어떻게 선언 했습니까? 'viewDidLoad'에서'appDelegate.defaults'를'[NSUserDefaults standardUserDefaults]'로 대체하면 어떻게 될까요? – sch

+0

비 원자력 보유. NSUserDefaults로 교체하고 어떻게 될지 알아볼 것입니다. 지금 바로 확인하십시오. –

답변

3

appDelegate은 위에서 언급 한 코드를 호출 할 때 nil입니다. 당신은 사용해야

NSLog(@"appDelegate: %@", appDelegate); 
NSLog(@"appDelegate.defaults: %@", appDelegate.defaults); 
[appDelegate.defaults setBool:YES forKey:@"testKey"]; 
// ... 
+0

문제가 있습니다. 고마워요. –

2

:

[[NSUserDefaults standardUserDefaults] setBool:YES forKey:@"testKey"]; 

또는 재산의 어떤 종류의 것은 당신이 저장하는 데 사용하는 [NSUserDefaults standardUserDefaults]

+0

감사합니다. –

관련 문제