swift - 在 Swift 中无法识别轻按手势(手势开始)
问题描述
UITapGestureRecogniser 开始状态未被识别,只有结束状态被识别。
override func viewDidLoad() {
let tapgr = UITapGestureRecognizer(target: self, action: #selector(tapTrigger(recongizer:)))
bottomBar.addGestureRecognizer(tapgr)
}
@objc func tapTrigger(recongizer: UITapGestureRecognizer){
if recongizer.state == .began{
print("recognised") // does not print
}else if recogniser.state == .ended{
print("ended") //prints
}
}
我要做的是在识别触摸时突出显示视图(而不是添加识别器的视图),并在取消触摸时取消突出显示。
解决方案
而不是使用UITapGestureRecognizer
你可以使用UILongPressGestureRecognizer
来获得不同的状态。
像这样:
let tapgr = UILongPressGestureRecognizer(target: self, action: #selector(tapTrigger(recongizer:)))
tapgr.minimumPressDuration = 0
bottomBar.addGestureRecognizer(tapgr)
@objc func tapTrigger(recongizer: UITapGestureRecognizer){
if recongizer.state == .began{
print("recognised")
} else if recongizer.state == .ended{
print("ended") //prints
}
}
推荐阅读
- python - 我如何使用位于另一台 linux 服务器中的 python 获取 .sql
- winapi - 为 CComboBox 控件设置透明边框
- sql-server - 从周列获取最近 6 个月的数据
- c# - 使用泛型从 propertyinfo getvalue 将对象转换为接口列表
- dkim - 如何修改能够作为另一个工作区帐户发送的谷歌工作区帐户中的返回路径?
- permissions - 在 terraform 中为 aws 启用负载均衡器日志
- python - 如何将带有图像的 Docx 文件发布到 WordPress 网站?
- image-processing - 我们如何使用图像处理或计算机视觉获得两种相似颜色之间的边界线?
- python - 编写一个用于接收密码的程序,该程序告诉用户它的长度,以及它是否太大、太小或是否太强
- java - 为什么我的 if input.equals("Quit") 没有正确退出?