我正在创建一个应用程序,当我在屏幕上滑动手指时,我正在使用代码画线。
- (void)touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event
{
CGContextSetLineCap(UIGraphicsGetCurrentContext(), kCGLineCapRound);
CGContextSetLineWidth(UIGraphicsGetCurrentContext(),3.0);
CGContextSetRGBStrokeColor(UIGraphicsGetCurrentContext(), 0.0, 0.5, 0.6, 1.0);
CGContextBeginPath(UIGraphicsGetCurrentContext());
CGContextMoveToPoint(UIGraphicsGetCurrentContext(), startPoint.x, startPoint.y);
CGContextAddLineToPoint(UIGraphicsGetCurrentContext(), endPoint.x, endPoint.y);
CGContextStrokePath(UIGraphicsGetCurrentContext());
}
而且我也在使用代码同时在该行移动箭头....
-(void)moveBallConstantly
{
[UIView animateWithDuration:0.01f animations: ^{
[appDel.ballImageView setCenter:CGPointMake(appDel.ballImageView.center.x + (x/increamentFraction), appDel.ballImageView.center.y + (y/increamentFraction))];
}];
}
它只是功能的一小部分。我可以不断地移动箭头,但是为了更好地平滑箭头移动,我用计时器 .01 重复调用这个函数。
由于我同时进行这两个处理,因此有时会产生问题。有时箭头移动方法会延迟,有时线绘制方法会延迟。