it-swarm.com.ru

Ручная установка состояния UIButton

Я UIButton использую + buttonWithType:

Что мне нужно выяснить, это как вручную изменить состояние кнопки. Есть моменты, когда мне нужно, чтобы он был отключен.

Я прочитал документацию UIButton, но не могу найти ничего о ручной настройке состояния кнопки.

Любые мысли будут с благодарностью.

15
acreek

Вы пробовали button.enabled = NO;?

43
Ben Gottlieb

есть также государства:

   button.highlighted = NO;
   button.selected = NO;
24
roberthuttinger

Разве это не просто свойство state? Он находится в классе UIControl, который является суперклассом UIButton.

Правка: ой, нет, это не так. Документы говорят: "Этот атрибут доступен только для чтения - нет соответствующего метода установки".

6
Stephen Darlington

Вы можете вручную установить состояние UIButton.

UIButton *btnCheck=[UIButton buttonWithType:UIButtonTypeCustom];

if(btncheck isselected])
{
    btncheck.selected=FALSE;
}
else
{
    btncheck.selected=TRUE;
}

Вы можете выполнять операции с UIButton в соответствии с вашими требованиями, например выполнять некоторые действия, когда UIButton выбран, а пока не выбран.

Надеюсь, что это поможет вам....

3
Birju

для Swift 3 вы можете использовать

button.isSelected = true

2
F.sh

Для тех, кто прибывает сюда, желающих изменить "состояние" кнопки (в отличие от "включен"). Стивен прав: "Этот атрибут только для чтения - соответствующего метода установки нет".

То, что вы действительно хотите установить, это состояние ячейки кнопок.

[[myNSButtonOutlet cell] setState: NSOnState];  //Options NSOnState, NSOffState, NSMixedState
0
Lorne K

Цель C:

button.selected = Yes;
button.highlighted = NO;
button.enabled = Yes;

Свифт 4:

button.isSelected = true 
button.isEnabled = true

Также вы можете использовать: (Swift 4)

 button.state == .selected
0
Zouhair