【发布时间】:2014-08-13 11:17:52
【问题描述】:
我正在开发一个游戏,其中UIImageView 沿着Bezier 路径移动。我想为移动的UIimageview 提供用户交互,以便用户可以通过触摸UIImageView 来引导UIImageView,并将其拖到路径上!如何做到这一点?
【问题讨论】:
标签: ios iphone c cocoa-touch sprite-kit
我正在开发一个游戏,其中UIImageView 沿着Bezier 路径移动。我想为移动的UIimageview 提供用户交互,以便用户可以通过触摸UIImageView 来引导UIImageView,并将其拖到路径上!如何做到这一点?
【问题讨论】:
标签: ios iphone c cocoa-touch sprite-kit
只需使用平移手势并将其添加到 UIImageView 并提供用户移动它的路径。Pan Gesture
此链接可能有助于理解和实施相同的内容。还有什么要告诉我的。
【讨论】:
您必须检查触摸点坐标是否在 Beizer Path 内。如果它在里面允许 UITouch 和移动,否则不允许。相应地给出If Condition。
【讨论】:
请试试这个...
这里 selectedImageCat 是 gobal uiimageview 对象,而 touchimgView 是 select(touched) 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
}
【讨论】: