gpt4 book ai didi

ios - UIView 变透明后如何检测手势?

转载 作者:搜寻专家 更新时间:2023-11-01 05:57:24 31 4
gpt4 key购买 nike

我在其他一些 UI 组件之上有一个 UIView 来检测长按手势。当长按开始时,我想通过将背景颜色更改为灰色和 alpha = 0.1 来提示用户。

长按结束后,UIView 必须变回完全透明。我将它的 alpha 设置为 0,但问题是......

无法检测到进一步的猜测。

mainView = UIView()
mainView.frame = ...
let longPressRecognizer = UILongPressGestureRecognizer(target: self, action:Selector("longPressed:"))
mainView.addGestureRecognizer(longPressRecognizer)

func longPressed(sender: UILongPressGestureRecognizer) {
let view = sender.view!

if sender.state == .Began {
view.backgroundColor = UIColor.grayColor()
view.alpha = 0.1
} else if (sender.state == .Ended || sender.state == .Cancelled || sender.state == .Failed) {
view.backgroundColor = UIColor.whiteColor()
view.alpha = 0
}
}

使此 UIView 变回其原始状态以便在最初创建时可以检测到更多手势的正确方法是什么?

最佳答案

将 UIView 的 alpha 属性设置为 0 将使其停止接收触摸。相反,当您希望它不可见时,将其背景设置为 UIColor.clearColor()

关于ios - UIView 变透明后如何检测手势?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36097335/

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