Swift игровые площадки UIButton работают некорректно - PullRequest
0 голосов
/ 14 марта 2019

У меня эта кнопка UIB называется «кнопка запуска» на быстрых игровых площадках.Это настройка для него.

    func setupStartButton() {
        startButton.frame = CGRect(x: 15, y: 550, width: 125, height: 50)
        startButton.backgroundColor = UIColor(ciColor: CIColor(red: 255/255, green: 0/255, blue: 77/255, alpha: 1.0))
        startButton.layer.cornerRadius = 20
        startButton.setTitle("Start", for: .normal)
        startButton.setTitleColor(.white, for: .normal)
        startButton.addTarget(self, action: #selector(startButtonTapped), for: .touchUpInside)
        view.addSubview(startButton)

Я вызываю это в viewDidLoad ().

    override func viewDidLoad() {
        view.frame = CGRect(x: 0, y: 0, width: 524, height: 766)
        view.backgroundColor = .white

        setupStartButton()

        PlaygroundPage.current.liveView = view
        PlaygroundPage.current.needsIndefiniteExecution = true
    }

Но когда я нажимаю на кнопку, она не запускает функцию startButtonTapped, которая просто выводит «Hello» на консоль.

Это функция 'startButtonTapped'.

    @objc func startButtonTapped() {
        print("Hello")
    }

Почему она ничего не делает, когда я нажимаю кнопку?Как я могу это исправить?
Спасибо

1 Ответ

0 голосов
/ 14 марта 2019

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

import UIKit
import PlaygroundSupport

class VC: UIViewController {

    let startButton = UIButton(type: .system)

    override func viewDidLoad() {
        super.viewDidLoad()

        setupStartButton()
    }

    func setupStartButton() {
        startButton.frame = CGRect(x: 15, y: 550, width: 125, height: 50)
        startButton.backgroundColor = UIColor(ciColor: CIColor(red: 255/255, green: 0/255, blue: 77/255, alpha: 1.0))
        startButton.layer.cornerRadius = 20
        startButton.setTitle("Start", for: .normal)
        startButton.setTitleColor(.white, for: .normal)
        startButton.addTarget(self, action: #selector(startButtonTapped), for: .touchUpInside)
        view.addSubview(startButton)
    }

    @objc func startButtonTapped() {
        print("Hello")
    }
}

let vc = VC()
PlaygroundPage.current.liveView = vc

enter image description here

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...