如果使用 interface builder 将 Switch 拖到 xib 文件中,则可以在 IB 中将状态设置为开/关。有没有办法将开关的状态保存到应用程序下次启动时,以便开关处于关闭之前的相同状态?
最佳答案
您可以使用 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:
Action 中
- (IBAction)switched:(id)sender
{
if (sender == self.mySwitch)
{
[[NSUserDefaults standardUserDefaults] setBool:self.mySwitch.isOn forKey:@"mySwitch"];
[[NSUserDefaults standardUserDefaults] synchronize];
}
}
希望这对您有所帮助。
关于ios - 将 Interface Builder 用于 Switch,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13969420/