gpt4 book ai didi

ios - UITapGestureRecognizer sender 是手势,不是ui对象

转载 作者:IT王子 更新时间:2023-10-29 05:46:46 25 4
gpt4 key购买 nike

我有一个名为的按钮,我给了它一个 UIGestureRecognizer,这样一个 IBAction 只在按钮被长按时运行。您可以通过向按钮本身添加 UILongPressGestureRecognizer 来实现。然后你控制拖动那个手势识别器到一个像这样的函数:

 @IBAction func handleGesture(sender: UIGestureRecognizer) {
if sender.state == UIGestureRecognizerState.Began
{
let labelTap1=UITapGestureRecognizer(target: self, action: "labelTapped:")
let alertController = UIAlertController(title: "**I want this to be the title of the button**", message:
"This is the description of the function you pressed", preferredStyle: UIAlertControllerStyle.Alert)
alertController.addAction(UIAlertAction(title: "OK", style: UIAlertActionStyle.Default,handler: nil))

self.presentViewController(alertController, animated: true, completion: nil)
}
}

如您所见,出现了 UIAlertController,我希望标题显示按钮的当前标题。如果此函数的发送者是按钮,我可以使用 sender.currentTitle 调用它。当功能的发送者是手势时,如何获得与手势相关的按钮的标题。

我在 Objective C 中看到过这样的帖子,但在 Swift 上没有看到。这就是项目在您长按按钮本身时获取按钮描述的全部内容。

最佳答案

您可以通过其 view 属性获取对添加手势的 View 的引用。在这种情况下,您将它添加到按钮,以便 View 属性返回给您按钮。

let button = sender.view as? UIButton

关于ios - UITapGestureRecognizer sender 是手势,不是ui对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30972288/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com