触摸并拖动屏幕周围的图像

时间:2011-12-27 00:12:17

标签: iphone objective-c ios xcode ipad

我有三张图片,我希望用户在屏幕上移动。例如,你有足球,棒球和篮球。我希望用户选择其中一个图像,然后在屏幕上移动该图像而不影响其他两个图像。我看了一些关于让图像在屏幕上移动的教程,但是我很难在几个图像周围移动。

在屏幕上启用三个图像以使用单独的触控控制(拖动)的最佳方法是什么。

1 个答案:

答案 0 :(得分:6)

只需创建一个UIImageView子类,对于这个例子,我将其称为DragView,并为每个图像视图使用此类:

<强> DragView.h

@interface DragView : UIImageView {
}
@end

<强> DragView.m

- (void)touchesMoved:(NSSet *)set withEvent:(UIEvent *)event {
    CGPoint p = [[set anyObject] locationInView:self.superview];
    self.center = p;
}

现在,用户将能够在其超级视图中拖动任何单个DragView实例。如果要手动创建图像视图(例如imageView = [[UIImageView alloc] initWithImage:anImage]),请将UIImageView替换为DragView。您还需要在视图控制器的标题中导入DragView.h。

如果要通过界面构建​​器初始化图像视图,则可以使用属性检查器将图像视图的类从UIImageView更改为DragView