NSUserDefaults standard UserDefaults 사용

전송:http://blog.csdn.net/leikezhu1981/article/details/7108959
아이 폰 에서 로 컬 에 데 이 터 를 저장 하 는 것 은 쉽게 말 하면 세 가지 방식 이 있다. 데이터베이스, NSUserDefaults 와 파일 이다.
NSUserDefaults 는 사용자 설정 과 같은 데이터 양 이 적은 데 이 터 를 저장 하 는 데 사 용 됩 니 다.모든 것 을 넣 을 수 있 는 것 은 아 닙 니 다. NSString, NSNumber, NSDate, NSArray, NSDictionary 만 지원 합 니 다. 자세 한 방법 은 클래스 파일 을 볼 수 있 습 니 다.NSUserDefaultsstandard UserDefaults 는 영구적 으로 보 존 된 데 이 터 를 기록 하 는 데 매우 편리 합 니 다. 파일 을 읽 거나 쓸 필요 가 없 이 NSDictionary 사전 에 보관 하고 시스템 에서 파일 에 저장 합 니 다. 시스템 은 이 응용 프로그램의 / Library / Preferences / gongcheng. plist 파일 에 저 장 됩 니 다.주의해 야 할 것 은 프로그램 이 예상 치 못 하 게 종료 되면 NSUserDefaultsstandard UserDefaults 데 이 터 는 시스템 에 기록 되 지 않 지만 [[NSUserDefaultsstandard UserDefaults] synchronize] 명령 을 사용 하여 데이터 가 손실 되 지 않도록 파일 에 직접 동기 화 할 수 있 습 니 다.
1. NSUserDefaults 에 데 이 터 를 저장 합 니 다.
//UISwitch
- (IBAction)switchChanged:(id)sender{
        NSUserDefaults *userDefaults = [NSUserDefaults standardUserDefaults];
        [userDefaults setBool:_theSwitch.on forKey:@"switchValue"];
}

//UITextField
- (IBAction)inputChanged:(id)sender{
        NSUserDefaults *userDefaults = [NSUserDefaults standardUserDefaults];
        [userDefaults setObject:_textField.text forKey:@"inputValue"];
}

2. NSUserDefaults 의 데이터 읽 기:
//UISwitch
NSUserDefaults *userDefaults = [NSUserDefaults standardUserDefaults];
BOOL sw = [userDefaults boolForKey:@"switchValue"];
[_theSwitch setOn:sw];

//UITextField
NSString *str = [userDefaults stringForKey:@"inputValue"];
[_textField setText:str];

registerDefaults: 방법 은 선 호 설정 의 부분 집합 을 등록 하 는 것 입 니 다. plist 파일 에 쓰 지 않 지만 ND 에서 찾 을 수 있 습 니 다.즉, plist 파일 에서 본 데 이 터 는 당신 이 표시 한 설정 입 니 다.예 를 들 어 setxxx 방법 을 호출 합 니 다.

좋은 웹페이지 즐겨찾기