如何沿Bezier路径拖动UIImageView

时间:2014-06-23 12:08:50

标签: ios iphone c cocoa-touch sprite-kit

我正在开发一个UIImageView沿着Bezier路径移动的游戏。我想为移动UIimageview提供用户互动,以便用户可以通过触摸UIImageView来引导UIImageView,并将其拖动到路径周围!如何做到这一点?

enter image description here

3 个答案:

答案 0 :(得分:0)

只需使用平移手势并将其添加到UIImageView,并提供用户移动它的路径。Pan Gesture

此链接可能有助于理解和实施相同的内容。别的什么让我知道。

答案 1 :(得分:0)

您必须检查触摸点坐标是否在Bezier路径内。如果它在里面允许触摸和移动,否则不。相应地提供如果条件

答案 2 :(得分:0)

请试试这个......

这里selectedImageCat是gobal uiimageview对象,touchimgView是选择(触摸)imageview

-(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event
    {
        for (UITouch *touchPoint in touches)
        {
              if(CGRectContainsPoint(touchimgView.frame, [touchPoint locationInView:self.view]))
        selectedImageCat=(UIImageView*)touchimgView;

        }
    }

    -(void)touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event
    {
        if (selectedImageCat!=nil)
        {
            CGPoint pt = [[touches anyObject] locationInView:self.view];
            [selectedImageCat setCenter:pt];
        }
    }

    -(void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event
    {


        //here you provide final frame for touchimgView object
    }