2016-01-07 7 views
1

создать Start_button и сделать @IBOutlet и @IBActionКак скрыть кнопку после щелчка

@IBOutlet weak var Start_button: UIButton! 

@IBAction func Start_button(sender: AnyObject) 

Теперь я хочу кнопку скрыть за клик. Я стараюсь, но это не работает:

@IBAction func Start_button(sender: AnyObject) 
    { 
     Start_button.hidden = true; 
    } 

Сообщение об ошибке:

fatal error: unexpectedly found nil while unwrapping an Optional value 
(lldb) 

Как я могу скрыть эту кнопку?

Спасибо за помощь!

+0

удалить розетку и подключите его снова имя diff. Также переименуйте свой метод действий в имя diff. –

+0

@Alexander измените параметр отправителя на UIButton и просто измените sender.hidden на true '@IBAction func startButtonAction (отправитель: UIButton) {sender.hidden = true}' –

+0

Если вы хотите переключить его 'sender.hidden =! sender.hidden' –

ответ

2

Его ноль, потому что вы, вероятно, не подключили его к раскадровке/нибу. Вам необходимо подключить розетку, вы не можете просто создать выход в коде и ожидать, что он будет подключен к видимому элементу. То же самое касается вашего действия. @IBOutlet/@IBAction означает Interface Builder Outlet/Action, что означает, что вы должны установить их в Interface Builder.

Также лучше, если ваше действие использует отправителя, а не локальную переменную (когда она указывает на одно и то же). И вы не должны использовать ; в конце строки.

@IBAction func Start_button(sender: UIButton) // Change to UIButton 
{ 
    sender.hidden = true 
    // OR 
    // (sender as! UIButton).hidden = true 
} 
+0

Спасибо за ответ. Я создаю '@IBOutlet/@ IBAction' для кнопки с нажатием CTRL и перетаскиванием в код. Когда я пытаюсь использовать 'sender.hidden = true' Xcode показать мне ошибку:' Значения типа «AnyObject» не имеет ни одного члена «hidden'' –

+0

Изменить AnyObject для UIButton – tskulbru

+0

IBActions и IBOutlets должны следовать тому же именованию, а вары и методы в Swift –

0
@IBAction func button_nameA(sender: AnyObject) { 
// show hidden buttons 
    self.Target_Object.hidden = false 

} 

Так при нажатии кнопки А его автоматически отправить вам цель и в выходные также у вас есть кнопка, чтобы скрыть, если вы работаете одно приложение просмотра

Смежные вопросы