我知道這已被問過,但我還沒有找到解決方案。我試圖保存UISwitch狀態,以便無論我輸入哪個VC,該開關狀態仍處於活動狀態。但是,任何時候我離開VC開關時,它都會關閉。目前,這是我使用保存開關狀態代碼:保存UISwitch狀態 - 目標C
- (IBAction)tvpSwitch:(UISwitch *)sender {
if (sender.isOn) {
[[NSUserDefaults standardUserDefaults]setObject:@"on" forKey:@"tvpSwitch"];
[[NSUserDefaults standardUserDefaults]synchronize];
}
else {
[[NSUserDefaults standardUserDefaults]setObject:@"off" forKey:@"tvpSwitch"];
[[NSUserDefaults standardUserDefaults]synchronize];
}}
我然後把這是任何VC viewWillAppear中:
-(void)viewWillAppear:(BOOL)animated
{
if ([[[NSUserDefaults standardUserDefaults]valueForKey:@"tvpSwitch"]isEqualToString:@"on"])
{
(sender.isOn=YES);
}
else
{
(sender.isOn=NO);
}}
這也標誌在viewWillAppear中的方法,上面寫着:「使用未標識的標識符'發件人'。「我通常嘗試使用參考指南,但我很難確定哪裏出了問題。任何幫助將是偉大的!謝謝!
你是如何創建'UISwitch'?因爲你的'發件人'在哪裏,你應該參考開關(例如,self.nameOfTheSwitch) –