【发布时间】:2010-09-03 04:37:54
【问题描述】:
我正在使用 CGContext 在手指触摸上画线。 如果手指在屏幕上缓慢移动,则效果很好……但问题是,如果手指快速移动,则线条会滞后于手指。我的意思是在手指触摸该点一秒钟后,该线在该点绘制(太烦人了——这不是模拟器上的问题,而只是设备上的问题)。 其次,如果我用它画一条曲线,曲线就会非常有角度——我的意思是曲线不是很平滑 请帮忙(我不想使用OpenGL,有没有其他解决方案)
编辑:-
抱歉,我是个菜鸟……不太了解 hotpaw 下面所说的内容……但这是我的代码
-(void) draw rect{
CGContextBeginPath(ctx);
CGContextMoveToPoint(ctx, beginpointX, beginpointY);
CGContextSetStrokeColorWithColor(ctx, CGColor);
CGContextAddLineToPoint(ctx,currentpointX,currentpointY);
CGContextSetLineCap(ctx, kCGLineCapRound);
CGContextStrokePath(ctx);
CGContextSetLineJoin(ctx, kCGLineJoinRound);
CGContextClosePath(ctx);
在我的touchesBegan 和touchesmoved 方法中,我调用了视图的setNeedsDisplay 方法。
不知道有多少帧/秒或触摸事件...请帮助它非常紧急
【问题讨论】:
-
在 uiview 的 drawrect 方法中 - CGCOntextbeginpath、movetopoint、addlinetopoint、strokepath、closepath....正如我所说,它在正常的手指运动上完美工作,但是当手指在设备上快速移动时,它是滞后的
标签: iphone