2012-03-05 2 views
1

UIControlState의 여러 인스턴스를 IOS 플랫폼의 NSUserDefaults 내에 저장하려고합니다. NSUserDefaults에 여러 UIControlState 인스턴스를 저장하려면 어떻게해야합니까?

은 현재 내가 viewWillAppear 내에서 loadPrefs 기능과 viewWillDisappear 내에서 해당 writePrefs이 그들이 UISlider, UISwitch 등이 될의 다양한 UIControl 요소와 환경 설정 패널이 있다고 가정 해 봅시다.

나중에 추가 할 컨트롤에 대해 NSUserDefaults 내에 상태를 저장하는 코드를 추가하는 대신 NSUserDefaults의 모든 키를 반복하고 그에 따라 적절한 상태를 설정하는 쉬운 방법이 있습니까?

NSArray 또는 다른 컬렉션을 통해이를 수행하는 "적절한"방법이 있습니까, 아니면 시간을 할애 할 가치가 없습니까?

답변

2

당신은 dictionaryRepresentation 방법을 사용하여있는 NSDictionary로 전체 NSUserDefaults 물건을 얻을 수 있습니다 :이 도움이

NSDictionary *dict = [[NSUserDefaults standardUserDefaults] dictionaryRepresentation]; 
for (NSString *key in [dict allKeys]) 
{ 
    // do whatever you want 
} 

희망.

+0

감사합니다. 유용합니다. 일단 모든 키를 살펴보기 시작하면 각각의 UIControl 요소와 어떻게 일치합니까? – Will

+0

음 - 전적으로 당신에게 달려 있습니다. –

+1

아, 그래도 아직 그 부분에 수작업이 있습니다. 감사합니다. 정말 도움이되었습니다. – Will

관련 문제