예를들어 A.m/A.h 가 있고 B.m/B.h 가 있다면,
A.m에서는 어떠한 정보를 파싱해서 스트링에 저장을 하고
B.m에서는 A.m에 저장된 파싱값 (스트링)을 사용하려고 하는데요.
이떄 어떤 식으로 코딩을 해야 하나요??
노티피케이션, 딜리게이트 같은걸 사용하라고 하시는데 이해가 잘 되지 않아서;;
간단한 코드로 설명해주시면 감사하겠습니다.
답변
NSNotificationCenter 를 이용해서 값을 직접 전달해 주어도 되고,
NSUserDefaults 에 값을 저장해두었다가 사용해도 되고,
Singleton 객체를 만들어서 값을 저장해두었다가 사용해도 됩니다..
각각의 키워드로 검색해 보시면 참고하실 자료가 많이 있습니다.
자주 사용하는 NSUserDefaults 에 관한 API
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>];
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>];
SQLite까지 사용할 필요가 없는 간단한 데이터를 다룰 때 좋은 방식이다. 예를 들어 앱을 껐다가 다시 켜도 기억해야 하는 작은 데이터, 게임 최고 점수라든가 사용자 아이디 같은 값을 저장할 때 유용하다.
저장하기
1 2 | [[NSUserDefaults standardUserDefaults] setObject:myDate forKey:@ "dateKey" ]; [[NSUserDefaults standardUserDefaults] synchronize]; |
이때 setObject는 setFloat, setInteger, setDouble등으로 대체 가능.
불러오기
1 2 | NSDate *date = (NSDate *)[[NSUserDefaults standardUserDefaults] objectForKey:@ "dateKey" ]; |
역시 objectForKey는 stringForKey, integerForKey등으로 대체 가능.
NSUserDefaults로 인해 생성되는 plist파일은
user/Application Support/iPhone Simulator/4.1/Application/XXXX/Library/Preferences/
에 생성된다. (실제 device라면 /Library/Preferences)
이 때 데이터를 불러올 때 Key에 해당하는 값이 없으면 return value는 nil이 된다.
'개발도구 > iOS - 아이폰 개발' 카테고리의 다른 글
[아이폰] 화면전환 addview (0) | 2012.05.15 |
---|---|
[아이폰] xcode release is unavailable Error (0) | 2012.05.15 |
[아이폰] storyboard turorial (0) | 2012.05.15 |
[아이폰] 기본 기능 function (0) | 2012.05.14 |
[아이폰] 그래프 graph 원그래프 chart 차트 (0) | 2012.05.10 |