我正在尝试计数何时有左滑动动作。然而,到目前为止,对于我所拥有的代码,结果总是1。
有什么想法为什么?
- (void)handleSwipes:(UISwipeGestureRecognizer *)sender
{
int countLeft = 0;
if (sender.direction == UISwipeGestureRecognizerDirectionLeft)
{
countLeft += 1;
imagesequence = @"2.png";
[_MainBackground setImage:[ UIImage imageNamed: imagesequence]];
NSLog(@"LEFT = %d", countLeft);
}
if (sender.direction == UISwipeGestureRecognizerDirectionRight)
{
NSLog(@"RIGHT");
imagesequence = @"3.png";
[_MainBackground setImage:[ UIImage imageNamed: imagesequence]];
}
}
问题是int countLeft = 0;
是在方法范围内定义的,所以每次运行时,countLeft
都被定义并初始化为0
,您需要将其提升到更大的范围,以保持最新的执行值(将定义移动到方法外(。