Ios UISwitch有时不';t调用值已更改

Ios UISwitch有时不';t调用值已更改,ios,ios8,uiswitch,Ios,Ios8,Uiswitch,多次切换UISwitch时,其开/关标签状态与UISwitch图形元素的状态不一致 将UISwitch和UITableView放在同一屏幕上时出错。如果屏幕上不存在UITableView,则不会发生错误。应用程序在设备上运行,无需电源线。 形象 视频 用相关代码更新您的问题。为什么要使用dispatch_async(dispatch_get_main_queue()),我认为这是一个问题,因为异步调用会中断正确的函数调用序列。我是否使用dispatch_async无关紧要。我将从代码中删除它。

多次切换UISwitch时,其开/关标签状态与UISwitch图形元素的状态不一致

将UISwitch和UITableView放在同一屏幕上时出错。如果屏幕上不存在UITableView,则不会发生错误。应用程序在设备上运行,无需电源线。 形象 视频


用相关代码更新您的问题。为什么要使用dispatch_async(dispatch_get_main_queue()),我认为这是一个问题,因为异步调用会中断正确的函数调用序列。我是否使用dispatch_async无关紧要。我将从代码中删除它。
-(void)doSwitch:(BOOL)val{
    title.text = val? @"On" : @"Off";
} 

- (IBAction)onValueChanged:(UISwitch*)sender {
    BOOL on = sender.on;
    [self doSwitch:on];
}