如何在等待事件时暂时禁用UISwitch?

时间:2012-11-08 23:01:16

标签: events bluetooth controls uiswitch

我正在尝试在等待事件时暂时禁用我的UISwitch控件。事件发生后,我希望我的开关重新启用。我正在尝试使控制切换蓝牙,所以我需要等到蓝牙通电才能再次关闭它。如果我不禁用它,我的UISwitch可能会与蓝牙功率失去同步。顺便说一下,我正在使用Apple的私有框架BluetoothManager。 (我确实意识到我无法将此应用程序上传到App Store,但该应用程序仅供个人使用。)

2 个答案:

答案 0 :(得分:0)

你试过

吗?
mySwitch.userInteractionEnabled = NO;

答案 1 :(得分:0)

UISwitch继承自UIControl,其中包含一个名为enabled的属性。只需设置此项。基本上得到与弗莱的答案相同的结果,我不太确定你的评论为什么你不接受。例如:

// Presumably you're opening bluetooth using a block, so if it hasn't finished yet ...
if (!bluetooth) {
bluetoothSwitch.enabled = NO;
}

然后当蓝牙设定器被块初始化时调用它:

// If initialisation was successful re-enable
if (_bluetooth) {
bluetoothSwitch.enabled = YES
// Then just update the view containing the switch
}