如何移动2个对象在Xcode 4.6.3中添加相同的时间?

时间:2013-09-21 22:33:26

标签: iphone ios objective-c xcode uiimageview

我在Xcode 4.6.3的Interface Builder中有一个视图。在这个视图中,我有 2 小的UIImageViews。第一个UIImageView位于视图的上半部分,第二个位于视图的下半部分。我想同时移动这两个视图(这是两个玩家的多人游戏,当这两个玩家同时移动这个UIImageViews 时,但每个人都有自己的方向)。顶部的UIImageView位于视图的上半部分,底部的UIImageView位于视图的下半部分。目前我的代码允许我只移动一个对象(对象是“播放器”,这是一个底部的UIImageView):

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

       UITouch *drag = [[event allTouches] anyObject];
       player.center = CGPointMake(drag locationInView:self.view);

}

谢谢!

1 个答案:

答案 0 :(得分:0)

(NSSet *)touches有点像触摸数组。如果屏幕上检测到2个触摸,则触摸将有2个对象。像这样列举它们:

NSSet *allTouches = [event allTouches]; 
for (UITouch *touch in allTouches) {}

将为您提供一个UITouch对象,以便您可以查看它所在的屏幕部分以查看它是哪个播放器。

顺便说一句CGPointMake(drag locationInView:self.view)应为CGPointMake([drag locationInView:self.view])