[英]How to create and draw a visual swipe gesture
我想嘗試為iPhone項目實現可視化滑動,就像它們在《水果忍者》等某些游戲中所做的那樣。 當您在屏幕上拖動手指時,它留下的痕跡會在一段時間后消失。 我認為您可以在“鏈”中擁有固定數量的點,並且隨着新點添加到前面,舊點將從后面刪除。 我可以看到使用-touchesMoved
生成新點,並使用NSMutableArray
跟蹤這些點。 我只是無法想象要使用哪種方法來實際繪制線段。 我會做一個CALayer
並畫一條線連接活動點嗎? 或使用其他視圖對象,然后將它們結合在一起。
有任何想法嗎?
如果您用CGPoints填充了“點”,則類似的事情將起作用。 注意:這是一個快速剪切,粘貼和編輯的工作-因此可能會出現錯誤。 另外,我將stl :: vector用於“點”。 您可能要使用其他結構。
CGContextRef context = UIGraphicsGetCurrentContext();
CGMutablePathRef dataPath = CGPathCreateMutable();
bool firstPoint = YES;
for (int i=0; i < points.size(); ++i)
{
CGPoint point = points[i];
if (firstPoint)
{
CGPathMoveToPoint(dataPath, NULL, point.x, point.y);
firstPoint = NO;
}
else
{
CGPathAddLineToPoint(dataPath, NULL, point.x, point.y);
}
}
CGContextSetRGBStrokeColor( context, 1.0, 0.0, 0.0, 1.0);
CGContextSetLineWidth( context, 5);
CGContextBeginPath( context );
CGContextAddPath( context, dataPath );
CGContextDrawPath( context, kCGPathStroke);
CGPathRelease(dataPath);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.