如果使用界面构建器将Switch拖到xib文件,则可以在IB中将状态设置为on / off。有没有一种方法可以保存开关的状态,直到下次启动应用程序,以便开关在关闭之前处于相同状态?
最佳答案
您可以使用NSUserDefaults保存它。
首先将您的交换机作为IBOutlet连接
@property (weak, nonatomic) IBOutlet UISwitch *mySwitch;
另外,将交换机作为IBAction连接,事件类型为“ Value Changed”
- (IBAction)switched:(id)sender;
然后在您的UIViewController的
viewDidLoad
BOOL savedState = [[NSUserDefaults standardUserDefaults] boolForKey:@"mySwitch"];
[self.mySwitch setOn:savedState];
并在新的
switched:
操作中- (IBAction)switched:(id)sender
{
if (sender == self.mySwitch)
{
[[NSUserDefaults standardUserDefaults] setBool:self.mySwitch.isOn forKey:@"mySwitch"];
[[NSUserDefaults standardUserDefaults] synchronize];
}
}
希望这可以帮助。