2011-09-18 26 views
0

这里碰撞的计数器是我的代码:问题有两个imageViews

-(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; 
    } 
} 

} 我想要那个1次,每次的数量增加有ImageView的之间的“碰撞“和”中心“,但我的问题是计数增加太多,更确切地说,它增加了”imageView“在”中心“,然后当它不触及”中心“柜台停止。我可以如何解决这个问题?对不起我的英文我是法语:/

回答

0

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

+0

我不明白你能解释更多吗? –