Связывание кнопки через переход при использовании material.io - PullRequest
0 голосов
/ 10 июня 2019

Я новичок в Swift, и я создаю экран входа в систему с помощью Material.io в Swift, и мой пользовательский интерфейс выглядит следующим образом ui.Однако я не вижу ничего на своей главной.страховой доске main.storyboard Я привык создавать переходы вручную, а затем использовать

performSegue(withIdentifier: <#T##String#>, sender: <#T##Any?#>)
, чтобы использовать переход, но теперь, так как я не вижу кнопку, я не могу использовать переход при нажатии 2 кнопок Войти и зарегистрироваться.

Кроме того, обычно из основного.Раскадровка: у вас есть блок IBOutlet или IBAction, чтобы активировать определенные функции, например, что-то сделать при нажатии кнопки.Как это работает, когда вы используете, например, MDCButton.Как вы связываете кнопку с действием, таким как запуск перехода или обновление текстового поля.Спасибо.

Я объявил свою кнопку вот так

 let nextButton: MDCButton = {
        let nextButton = MDCButton()
        let containerScheme = MDCContainerScheme()
        nextButton.applyTextTheme(withScheme: containerScheme)
        nextButton.setTitleColor(.white, for: .normal)
        nextButton.translatesAutoresizingMaskIntoConstraints = false
        nextButton.setTitle("CREATE NEW ACCOUNT", for: .normal)
        nextButton.addTarget(self, action: #selector(didTapNext(sender:)), for: .touchUpInside)
        return nextButton
    }()

И я так называю

 @objc func didTapNext(sender: Any) {
        self.performSegue(withIdentifier: "toRegistration", sender: self)
        self.dismiss(animated: true, completion: nil)
    }

У меня есть переход, связывающий 2 контроллера вида.

1 Ответ

0 голосов
/ 10 июня 2019

Я не вижу ваш код, и у меня недостаточно представителей, чтобы комментировать, но похоже, что вы строите свой вид программно.Чтобы увидеть, когда кнопка получает touchUp, как если бы она была из розетки, вам нужно добавить цель.Попробуйте что-то вроде этого:

func functionWhereYouCreateTheButton() { (PROBABLY YOUR VIEW DID LOAD)
   let loginButton = UIButton()...
   ...
   ...
   ...
   loginButton.addTarget(self, action: #selector(self.buttonTapped), for: .touchUpInside)
}

func buttonTapped() {
   self.performSegue(withIdentifier: "SEGUEID", sender: self)
}
...