小编Mur*_*hin的帖子

UIButton addTarget选择器不起作用

SquareBox.swift

class SquareBox {
  func createBoxes() {
    for _ in 0..<xy {
            let button = UIButton()

            button.backgroundColor = .white
            button.setTitleColor(UIColor.black, for: .normal)
            button.layer.borderWidth = 0.5
            button.layer.borderColor = UIColor.black.cgColor
            stack.addArrangedSubview(button)
            button.addTarget(self, action: #selector(click(sender:)) , for: .touchUpInside)
    }
  }

  @objc func click(sender : UIButton) {
    print("Click")
  }
}
Run Code Online (Sandbox Code Playgroud)

ViewController.swift

class GameViewController: UIViewController {
    override func viewDidLoad() {
        super.viewDidLoad()
        let boxRow = SquareBox() 
        boxRow.createBoxes()
    }
}
Run Code Online (Sandbox Code Playgroud)

另外我尝试了@IBAction而不是@objc,它不起作用,但是如果我在创建该对象的ViewController.swift中使用“ click”函数,则该函数可以工作,但是我需要在此类中使用此函数。

uibutton ios swift

8
推荐指数
3
解决办法
9500
查看次数

标签 统计

ios ×1

swift ×1

uibutton ×1