两个imageViews碰撞计数器的问题

时间:2011-09-18 09:38:56

标签: iphone xcode animation uiimageview collision-detection

这是我的代码:

-(void)moveTheImage{
for (NSUInteger i = 0; i < [views count]; i++) {
    imageView = [views objectAtIndex:i];
    X = [[XArray objectAtIndex:i] floatValue];
    Y = [[YArray objectAtIndex:i] floatValue];
imageView.center=CGPointMake(imageView.center.x + X, imageView.center.y + Y);
    [self interaction];

}

}

-(void)interaction{
if(!intersectFlag)
{   



    if(CGRectIntersectsRect(imageView.frame,centre.frame))    
    {
        intersectFlag = YES;    
        label.text= [NSString stringWithFormat:@"%d", counti];
        [imageView removeFromSuperview];
        ++counti;
    }
}
else
{
    if(!CGRectIntersectsRect(imageView.frame,centre.frame))
    {
        intersectFlag = NO;
    }
}

} 我希望每次“imageView”和“center”之间发生碰撞时计数增加1,但我的问题是计数增加太多,更准确地说是“中心”中的“imageView”增加,然后当它没有时t触摸“中心”计数器停止。我该如何解决这个问题?对不起我的英语我是法国人:/

1 个答案:

答案 0 :(得分:0)

如果“intersectFlag”标记单个imageView对象的状态,则它应该是该对象的成员,而不是在所有imageView之间共享。