最近我将Xcode 4.6.3更新为Xcode5 DP2.Everything在Xcode 4.6.3中运行正常。我的意思是在ViewController中有一个UISwitch和UIDatePicker以及两个按钮“set”和“clear”。当我从UIDatePicker中选择特定时间并将UISwitch状态更改为“on”并单击“set”按钮时,将为所选时间设置警报。如果我将UISwitch状态更改为“off”,UIDatePicker将显示当前时间,否则将显示所选时间。这在Xcode 4.6.3中工作正常。但在更新到Xcode5 DP2之后,每当我切换UISwitch状态时,UIDatePicker都会返回到当前时间,我的意思是即使我在UIDatePicker中选择了当前时间以外的时间并将UISwitch切换到“on”状态,UIDatePicker返回到当前时间。我不知道这里发生了什么.Xcode5 DP2有什么问题。请帮帮我..
这是我的代码:
-(IBAction) switchValueChanged
{
NSString *value = @"OFF";
if (switch1.on)
{
value = @"ON";
[[NSUserDefaults standardUserDefaults] setObject:value forKey:@"stateOfSwitch"];
[switch1 setOn:YES animated:YES];
}
else
{
[datePicker setDate:[NSDate date]];
[[NSUserDefaults standardUserDefaults] setObject:value forKey:@"stateOfSwitch"];
[[UIApplication sharedApplication] cancelAllLocalNotifications];
}
[[NSUserDefaults standardUserDefaults]synchronize];
}
答案 0 :(得分:0)
我有同样的问题,我花了太多时间试图让它工作,但显然这是xcode 5模拟器的问题。
只需在设备上运行它,你就会发现nsuserdefaults工作正常。
希望这有用。