我通常采用以下策略:
>在touchDownInsIDe上我设置了一个具有所需间隔的重复计时器.
>在touchUpInsIDe上我使计时器无效并释放.
但是对于每个这样的按钮,我需要一个单独的计时器实例变量,2个目标动作和2个方法实现. (这假设我正在编写一个通用类,并且不希望对同时触摸的最大数量施加限制).
是否有一种更优雅的方法可以解决这个问题,我错过了?
解决方法@H_403_21@ 通过以下方式为每个按钮注册事件:[button addTarget:self action:@selector(touchDown:withEvent:) forControlEvents:UIControlEventtouchDown];[button addTarget:self action:@selector(touchUpInsIDe:withEvent:) forControlEvents:UIControlEventtouchUpInsIDe];
对于每个按钮,设置标记属性:
button.tag = 1; // 2,3,4 ... etc
在处理程序中,做任何你需要的事情.通过标记识别按钮:
- (IBAction) touchDown:(button *)button withEvent:(UIEvent *) event{ NSLog("%d",button.tag);}总结
以上是内存溢出为你收集整理的objective-c – 实现按下并保持连续事件发射的优雅方式?全部内容,希望文章能够帮你解决objective-c – 实现按下并保持连续事件发射的优雅方式?所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)