我们想要Lyft按钮触摸事件,因为我在分析工作,所以,我需要有多少人选择Lyft,但我不能把UIView
点击事件。我尝试下面的代码。
let gesture = UITapGestureRecognizer(target: self, action: #selector(self.checkAction))
cell.lyftButton.addGestureRecognizer(gesture)
我如何才能做到这一点?
发布于 2019-05-23 12:44:32
您可以直接将选择器方法分配给lyftButton,例如
lyftButton.addTarget(self, action: #selector(lyftButtonAction(_:)), for: .touchUpInside)
@objc
func lyftButtonAction(_sender: UIButton) {
//Do your action
}
发布于 2020-02-04 17:36:47
要获取LyftButton,你需要获取Lyft视图中的按钮,在获取它之后,我试图向它添加另一个目标,这是你的'checkAction‘方法,但由于某种原因,它没有被调用。一种解决方法是:
检索Lyft UIButton的:
@IBOutlet weak var lyftButton: LyftButton!
@IBOutlet weak var transparentLyftButton: UIButton!
var requestLyftButton: UIButton?
func retrieveLyftButton(in view: UIView) {
for view in view.subviews {
if let lyftBtn = view as? UIButton {
lyftBtn.isEnabled = false
requestLyftButton = lyftBtn
} else {
retrieveLyftBtn(in: view)
}
}
}
transparentLyftButton IBAction触发你的方法+ lyft sdk原创动作:
@IBAction func requestLyft(_ sender: UIButton) {
if let lyftBtn = requestLyftButton {
checkAction() // Your method
lyftBtn.sendActions(for: .touchUpInside)
}
}
我希望你能理解我们做了什么,如果你有任何问题,请让我知道。
https://stackoverflow.com/questions/56275076
复制相似问题