Можно ли отключить UISwitch?Я не имею в виду перевод его в состояние ВЫКЛ, я имею в виду отключение взаимодействия с пользователем и отображение его серым.
В моем приложении есть два условия:
if (condition == true) { // UISwitch should be enabled } else { // UISwitch should be visible, but disabled // e.g uiswitch.enable=NO; }
Есть предложения?
Это должно сделать это:
switch.enabled = NO;
или эквивалентно:
[switch setEnabled:NO];
, где switch - любое имя вашей переменной UISwitch.
switch
UISwitch
Edit 18-Apr-2018
Ответ выше (ясно) - решение Objective-C, написанное задолго до того, как кто-либо когда-либо слышал о Swift.Эквивалентное решение Swift, конечно:
switch.isEnabled = false
Да, вы можете. UISwitch наследуется от UIControl, а UIControl имеет свойство enabled. Документация Apple по UIControl содержит все детали.
UIControl
enabled
К Включить
switch.enabled = YES;
Для отключения
Для тех, кто ищет Swift 3,
switch.isEnabled = false // Disabled switch
Я знаю, что вы не просили о выключенном состоянии, но на всякий случай кто-нибудь, как я, наткнулся здесь:
switch.isOn = false
[switchName enabled] = NO;
Используйте это, чтобы отключить ваш переключатель.
РЕДАКТИРОВАТЬ благодаря rckoenes: «Вы не должны пытаться установить свойство через getter. Вы должны использовать любой из параметров.свойство синтаксиса. "