Я пытаюсь создать макет приложения, но я не могу заставить UIB-кнопку подключиться к действию, которое должно быть выполнено, когда я щелкаю по нему.
Я не уверен, почему он не может найти метод, имена совпадают, и добавление в (_:)
к #selector
ничего не делает.
import UIKit
class LoginViewController: UIViewController {
var loginButton: UIButton?
@objc func onLoginButtonPress(sender: UIButton!) {
print("Login Button Press")
}
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view.
setup()
}
func setup() -> Void {
initLoginButton()
self.view.backgroundColor = .green
}
func initLoginButton() -> Void {
let loginButtonBounds = CGRect(x: 100, y: 100, width: 250, height: 250)
loginButton = UIButton(frame: loginButtonBounds)
loginButton!.backgroundColor = .red
loginButton!.setTitle("Login", for: .normal)
loginButton!.addTarget(self, action: #selector("onLoginButtonPress"), for: .touchUpInside)
self.view.addSubview(loginButton!)
}