赞
踩
一般我们使用长按手势的目的都是为了触发某种响应,通过控制属性minimumPressDuration来控制最小触发时间(默认为0.5秒),而如果有一种非常见但是又很合理的需求:触发长按后开启某个子线程循环执行某种操作,而且在用户不需要时停止。例如一个类似计算器的一个面板:
这里需要长按删除键实现快速删除,当然抬起后就会停止,我用了不同状态控制着快速删除线程的工作与否,前提是能获取到长按手势的开始和结束状态,这个长按手势封装得比较隐蔽。跟NSNotificationCenter一样,UILongPressGestureRecognizer的target的action方法其实是可以接受参数的:
let longPressGesture = UILongPressGestureRecognizer(target: self, action: "longPressCancalButton:")
当action方法被调用时,系统会连带UILongPressGestureRecognizer对象自己作为参数一同传递
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。