我在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);
}
谢谢!
答案 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])