아이폰 프로그래밍을 하다보면 빈번히 사용하게 되는것 중의 하나가 NSUserDefaults 일 것입니다.
NSUserDefaults 의 용도는 간단하게 전역 데이터 저장소라고 생각하시면 됩니다.
데이터의 종류는 int / bool / url / object 형으로 거의 모든 데이터를 저장할 수 있습니다.
데이터의 보존 기한은 앱을 삭제하기 전까지는 쭈욱~ 유지됩니다.
그럼 NSUserDefaults 에 데이터를 저장하고, 저장한 데이터를 읽어오는 방법에 대해서 설명하도록 하겠습니다.
(참고로 NSUserDefaults 에 데이터를 저장하기 위해서는
[data, key]의 쌍으로 저장을 해야합니다.
key값은 NSString형의 문자열입니다.)
1. NSUserDefaults 에 데이터 저장
(1) int 값 저장
[[NSUserDefaults standardUserDefaults] setInteger:<int value> forKey:<key value>];
(2) bool 값 저장
[[NSUserDefaults standardUserDefaults] setBool:<bool value> forKey:<key value>];
(3) object 저장
[[NSUserDefaults standardUserDefaults] setObject:<object> forKey:<key value>];
(4) 저장한 데이터 동기화(적용)
[[NSUserDefaults standardUserDefaults] synchronize];
2. NSUserDefaults 에 저장된 데이터 읽기
(1) int 값 읽기
int value = [[NSUserDefaults standardUserDefaults] integerForKey:<key value>];
(2) bool 값 읽기
bool value = [[NSUserDefaults standardUserDefaults] boolForKey:<key value>];
(3) NSString 값 읽기 (NSString 값 저장은 NSString 자체가 object이기 때문에 setObject를 이용하면 됩니다.)
NSString *value = [[NSUserDefaults standardUserDefaults] stringForKey:<key value>];
(4) object 읽기
id value = [[NSUserDefaults standardUserDefaults] objectForKey:<key value>];