//현재 값을 저장하는 함수
+(void)saveToUserDefaults:(NSString *)key value:(NSString *)value
{
NSUserDefaults *standardUserDefaults = [NSUserDefaults standardUserDefaults];
if(standardUserDefaults)
{
[standardUserDefaults setObject:value forKey:key];
[standardUserDefaults synchronize];
}
}
//저장한 값을 받아오는 함수
+(NSString *)retrieveFromUserDefaults:(NSString *)key
{
NSUserDefaults *standardUserDefaults=[NSUserDefaults standardUserDefaults];
NSString *val=nil;
if(standardUserDefaults)
val=[standardUserDefaults objectForKey:key];
return val;
}
//버튼을 링크한 함수
- (IBAction)SaveButton:(id)sender {
//저장할 문자열
NSString *speedString = [NSString stringWithFormat:@"%f",speedSlider.value];
NSString *soundString = [NSString stringWithFormat:@"%d",soundSwitch.on];
NSString *nameString=nameTextField.text;
NSString *levelString=[NSString stringWithFormat:@"%d", levelSegment.selectedSegmentIndex];
//저장
[ViewController saveToUserDefaults: GameSpeedID value:speedString];
[ViewController saveToUserDefaults:SoundOnOffID value:soundString];
[ViewController saveToUserDefaults:PlayerNameID value:nameString];
[ViewController saveToUserDefaults:GameLevelID value:levelString];
}
//받아올 때
NSString *gameSpeedString=[ViewController retrieveFromUserDefaults:GameSpeedID];
NSString *soundOnOffString=[ViewController retrieveFromUserDefaults:SoundOnOffID];
NSString *playerNameString=[ViewController retrieveFromUserDefaults:PlayerNameID];
NSString *gameLevelString=[ViewController retrieveFromUserDefaults:GameLevelID];
//저장한 값이 있다면
if(gameSpeedString!=nil)
{
NSLog(@"Load Saved Settings");
[speedSlider setValue:[gameSpeedString floatValue]];
[soundSwitch setOn:[soundOnOffString boolValue]];
nameTextField.text=playerNameString;
levelSegment.selectedSegmentIndex=[gameLevelString intValue];
}
else//없다면
{
NSLog(@"Application is first launched");
}
'프로그래밍 > iOS' 카테고리의 다른 글
[iOS]간단한 사진 촬영 어플 만들기 (0) | 2015.04.08 |
---|---|
[xcode5] empty프로젝트에서 헬로월드 출력하기 (0) | 2015.04.08 |
[Objective C] +메소드 -메소드 (0) | 2015.04.08 |
[iOS]Segment 활용법 (0) | 2015.04.08 |
[iOS]xcode 5.0에서 emptyProject로 시작하기 (0) | 2015.04.08 |