2

我正在制作一个绘图应用程序,我想根据触摸速度增加我的画笔大小。

我将如何做到这一点?

4

2 回答 2

4

是的。请参阅UIViewnamed上的方法touches*,特别是:

- (void)touchesMoved:(NSSet*)touches withEvent:(UIEvent*)event

它在检测到移动(“滑动”?)时被调用,并且不会被多次快速触摸“愚弄”。可以获取当前手指位置在视图中的坐标以及事件发生的时间:

UITouch *touch = [touches anyObject];
CGPoint inFrameCoordinate = [touch locationInView:self];
NSTimeInterval timestamp = [touch timestamp]

获取两个坐标之间的距离和时间来计算速度。

于 2010-01-18T19:51:15.783 回答
0

好吧,UITouch具有位置和时间戳的属性;使用这些属性,您可以计算两个触摸事件之间的触摸“速度”。

当然,这只适用于单次触摸,您可能需要平滑结果。此外,用户可能能够通过交替用两根手指快速敲击来“愚弄”您;-)

于 2010-01-18T19:45:22.893 回答