这是我的代码:
-(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触摸“中心”计数器停止。我该如何解决这个问题?对不起我的英语我是法国人:/
答案 0 :(得分:0)
如果“intersectFlag”标记单个imageView对象的状态,则它应该是该对象的成员,而不是在所有imageView之间共享。