UISwitch控件在Xcode 5中无法正常工作

时间:2013-07-12 03:51:52

标签: uidatepicker uiswitch ios7 xcode5

最近我将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];
}

1 个答案:

答案 0 :(得分:0)

我有同样的问题,我花了太多时间试图让它工作,但显然这是xcode 5模拟器的问题。

只需在设备上运行它,你就会发现nsuserdefaults工作正常。

希望这有用。