0
에 값을 저장 스위치/숨기기 버튼을 보여주기 위해 내가 UISwitch이 sosSwitch 인공 고관절의 이름이이 NSUserDefaults 키에 값을 저장합니다. 스위치 번호가 에 저장됨에 따라 sosBtn을 표시하거나 숨길 수 있습니까? NSUserDefaults? 그리고 코드를 어디에 넣어야합니까? viewDidLoad? 고맙습니다!방법 NSUserDefaults
에 값을 저장 스위치/숨기기 버튼을 보여주기 위해 내가 UISwitch이 sosSwitch 인공 고관절의 이름이이 NSUserDefaults 키에 값을 저장합니다. 스위치 번호가 에 저장됨에 따라 sosBtn을 표시하거나 숨길 수 있습니까? NSUserDefaults? 그리고 코드를 어디에 넣어야합니까? viewDidLoad? 고맙습니다!방법 NSUserDefaults
당신이 이미 가지고 있다고 가정 :
@property (retain, nonatomic) IBOutlet UIButton *sosBtn;
@property (retain, nonatomic) IBOutlet UISwitch *sosSwich;
- (IBAction)sosSwitch:(id)sender;
이 시도 :
-(void)viewDidLoad
{
if ([[NSUserDefaults standardUserDefaults] boolForKey:@"MySwitch"])
{
self.sosBtn.hidden = NO;
[self.sosSwich setOn:YES animated:YES];
}
else
{
self.sosBtn.hidden = YES;
[self.sosSwich setOn:NO animated:YES];
}
}
- (IBAction)sosSwitch:(id)sender
{
UISwitch *mySosSwitch = (UISwitch *)sender;
if (mySosSwitch.on)
{
self.sosBtn.hidden = NO;
[[NSUserDefaults standardUserDefaults] setBool:YES forKey:@"MySwitch"]; //YES means sosBtn should be visible
[[NSUserDefaults standardUserDefaults] synchronize];
}
else
{
self.sosBtn.hidden = YES;
[[NSUserDefaults standardUserDefaults] setBool:NO forKey:@"MySwitch"];
[[NSUserDefaults standardUserDefaults] synchronize];
}
}
좋아, 이해 ...하지만 모달 뷰 컨트롤러와 뷰에서 버튼에있는 내 스위치는, 내가 어떻게 할 수 있다면 똑같다? –
그런 경우 선택적 대리자 메서드를 구현해야합니다. 대리자 메서드 콜백의 예제가있는이 내 대답을 확인하십시오. http://stackoverflow.com/questions/8606674/uimodaltransitionstylepartialcurl-doesnt-get-back-to-previous-state-not-dismi/8607949#8607949 – user523234
감사합니다! 그게 날 도와 줬어! –