如何分别移动两个UIImageView

时间:2013-11-07 08:29:52

标签: ios objective-c uiimageview cgpoint

我在同一个视图中有两个UIImageView,我想分别移动它们。当我移动第一个时,第二个应该保持修复,反之亦然。

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

    UITouch *touch = [[event allTouches] anyObject];
    CGPoint location  = [touch locationInView:[self view]];
    [imageView1 setCenter:location];

    [imageView2 setCenter:location];
}

1 个答案:

答案 0 :(得分:0)

这个方法是一个来自UIResponder类的方法,当UIView(UIImageView是一个子类,所以没有问题)被移动时将被调用。

您必须做的是子类UIImageView,并且不要在超级视图中实现此方法。

<强> MovableImageView.h

@interface MovableImageView : UIImageView {

}

<强> MovableImageView.m

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

    UITouch *touch = [[event allTouches] anyObject];
    CGPoint location  = [touch locationInView:[self view]];
    [self setCenter:location];
}

您的两个UIImageView中的每一个现在应该是MovableImageView