Отключить кнопку



Я хочу отключить кнопку (UIButton) на iOS после его нажатия. Я новичок в разработке для iOS, но я думаю, что эквивалентный код на Objective - C этот:



button.enabled = NO;


но я не мог сделать это на swift.

654   6  

6 ответов:

логическое значение для NO в Swift это false.

button.isEnabled = false

должны сделать это.

здесь это Swift документация для UIControl ' s isEnabled собственность.

если вы хотите, чтобы кнопка оставалась статичной без" нажатого " внешнего вида:

// Swift 2
editButton.userInteractionEnabled = false 

// Swift 3
editButton.isUserInteractionEnabled = false 

помните:

1) Ваш IBOutlet есть --> @IBOutlet weak var editButton: UIButton!

2) этот код в viewWillAppear

Я делаю это следующим образом:

@IBAction func pressButton(sender: AnyObject) {
    var disableMyButton = sender as? UIButton
    disableMyButton.enabled = false
}

IBAction подключен к вашей кнопке в раскадровке.

Если у вас есть настройка кнопки Выход:

    @IBOutlet weak var myButton: UIButton!

затем вы можете получить доступ к свойствам включена с помощью . обозначение на названии кнопки:

    myButton.enabled = false

отключить кнопку на Swift 3:

yourButton.isEnabled = false

кнопка может быть отключена в Swift 4 с помощью кода

@IBAction func yourButtonMethodname(sender: AnyObject) {
 yourButton.isEnabled = false 
}

вы можете включить/отключить кнопку с помощью isEnabled или isUserInteractionEnabled собственность.

разница между двумя является :

  • isEnabled является свойством UIControl (супер класс UIButton) и это имеет визуальные эффекты (т. е. серым) включить/отключить

  • isUserInteractionEnabled является свойством UIView (супер класс UIControl) и не имеет визуального эффекта, хотя и достигает цель

использование :

myButton.isEnabled = false // Recommended approach

myButton.isUserInteractionEnabled = false // Alternative approach

Comments

    Ничего не найдено.