-1
A
回答
1
我建议你跟踪按钮的不同控制状态。您可以添加目标为三个不同的UIControlEvent的,像UIControlEventTouchDown,UIControlEventTouchUpInside,UIControlEventTouchUpOutside。触摸开始时会收到触摸事件,而另外两个事件会告诉您触摸已退出。在这些状态之间,您可以计算该值并更改一些文本。
[button addTarget:self action:@selector(touchStarted:) forControlEvents:UIControlEventTouchDown];
[button addTarget:self action:@selector(touchExited:) forControlEvents:UIControlEventTouchUpInside];
[button addTarget:self action:@selector(touchExited:) forControlEvents:UIControlEventTouchUpOutside];
- (void)touchStarted:(id)sender
{
self.touchInProgress = YES;
/* start your counting operation and do it until the value of touchInProgress BOOL is YES */
}
- (void)touchExited:(id)sender
{
self.touchInProgress = NO;
}
0
您有多种选择。
选项1:浮现在脑海中一对夫妇创建的UIView的定制子类,设置userInteractionEnabled的观点为真,执行的touchesBegan/touchesMoved/touchesEnded,并开发启动定时器并执行逻辑你想要什么
选项2:创建提供所需功能的UIGestureRecognizer的自定义子类。手势识别器具有用于在发生有趣事件时通知目标的内置机制。您可以创建自己的参数,其中包含在开始发送消息之前的延迟量参数以及消息之间的间隔。
选项2将采取最前沿的研究,但会给你最灵活,可重用的解决方案。我在GitHub上找到了示例自定义的UIGestureRecognizer项目。其中一个与我合作的是KTOneFingerRotationGestureRecognizer
创建您自己的手势识别器实际上比您想象的要容易。这是我会推荐的路线。这是一个很好的学习经验。
相关问题
- 1. C++ openGL连续按下按钮
- 2. 的Android:重新按下按钮时动态添加按钮
- 3. 如何增加按下按钮上的长按超时android
- 4. 长按下按钮在IOS
- 5. 如何用双短按和连续按下来实现按钮?
- 6. 当我按下“添加按钮”时添加LinearLayout
- 7. 长按按钮
- 8. 长按按钮
- 9. 添加新EDITTEXT按下按钮
- 10. 当点击按钮时添加数字
- 11. 如何在按下按钮时添加到数组中?
- 12. 如何在按下不同的按钮时添加到单数
- 13. KIVY - Python继续按下按钮
- 14. UILabel:按下按钮时将数字加1?
- 15. 按下按钮时如何增加/减少数字?
- 16. 按下按钮时动态加载iframe
- 17. asp.net按钮长按
- 18. 添加一个循环,实时按下按钮时(不刷新)
- 19. CSS - 连续强制按钮
- 20. Matplotlib连续检查按钮
- 21. 添加按钮
- 22. iphone - 同时按下按钮
- 23. 按下按钮时出错
- 24. 如何检测连续按下按钮的频率?
- 25. Android按下按钮,加速计数
- 26. 按下按钮
- 27. 按下按钮
- 28. 按钮按下
- 29. 按下按钮后添加一个动态的表单字段
- 30. 按下按钮时调用js函数