Tôi đang tạo ứng dụng, trong đó khi tôi vuốt ngón tay trên màn hình, lúc đó tôi vẽ đường bằng mã.Dòng iOS Vẽ trên Ngón tay vuốt bằng mũi tên sau đường vuốt Swipe
- (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());
}
Và tôi cũng đang di chuyển mũi tên cùng một lúc tại dòng đó sử dụng mã ....
-(void)moveBallConstantly
{
[UIView animateWithDuration:0.01f animations: ^{
[appDel.ballImageView setCenter:CGPointMake(appDel.ballImageView.center.x + (x/increamentFraction), appDel.ballImageView.center.y + (y/increamentFraction))];
}];
}
của nó chỉ nhỏ một phần của chức năng. Tôi có thể di chuyển mũi tên liên tục, nhưng để chuyển động trơn tru hơn của mũi tên, tôi gọi hàm này liên tục với bộ đếm thời gian 0,01.
Vì tôi đang thực hiện cả hai quá trình xử lý với nhau nên đôi khi tạo ra sự cố. Đôi khi phương pháp di chuyển mũi tên bị trì hoãn và đôi khi phương pháp drwing Line bị trì hoãn.
Plz cho tôi biết giải pháp để làm cả hai hoạt động cùng nhau.
Thanx trước.
Nó sẽ vẽ đường bằng ngón tay di chuyển, Nhưng tôi không cần phải di chuyển mũi tên cùng lúc trên dòng, Vì vậy, bạn không nghĩ rằng chúng sẽ đồng nhất với nhau. Đối với mũi tên di chuyển, tôi đang sử dụng bộ hẹn giờ, được gọi là 0,01 giây một lần. – vntstudy
Gotcha, câu hỏi ban đầu đã không đề cập đến việc giữ mũi tên trên dòng :) Để làm điều đó chỉ cần đặt box.center là bằng lastPoint. Nếu bạn không muốn có một hình ảnh động nhỏ, bạn chỉ có thể loại bỏ khối hình động trong touchesMoved: withEvent :. –