我将尝试为Swift 4中的一个动态创建的UILabel添加轻击手势,但在函数中它不会触发UITapGestureRecognizer功能。当我从viewDidLoad函数中添加轻击手势时它可以工作,但我必须从其他函数中添加轻击手势。
以下是代码:
以下是代码:
override func viewDidLoad() {
super.viewDidLoad()
createLabel()
}
func createLabel() {
let label = UILabel()
label.text = "abc"
label.numberOfLines = 0
label.frame.size.width = self.otherlinksStack.bounds.width
label.font = label.font.withSize(17) // my UIFont extension
label.sizeToFit()
label.tag = 1
self.otherlinksStack.addSubview(label)
let labelTapGesture = UITapGestureRecognizer(target:self,action:#selector(self.doSomethingOnTap))
label.isUserInteractionEnabled = true
label.addGestureRecognizer(labelTapGesture)
}
@objc func doSomethingOnTap() {
print("tapped")
}
userInteractionEnabled
иЃЊзљЃдЄЇtrue
дЇЖеРЧпЉЯ - crizzis