iOS - 按钮图片动画导致按钮在动画结束后被“选中”

3
我将尝试动画化一个UIButton的图像。动画运行良好,但之后它总是在按钮上添加了灰色色调(就像它被突出显示/选中一样)。
代码:
NSArray *images = [[NSArray alloc] init];
images = [NSArray arrayWithObjects:
          [UIImage imageNamed:IMAGE1],
          [UIImage imageNamed:IMAGE2],
          [UIImage imageNamed:IMAGE3],
          [UIImage imageNamed:IMAGE4],
          nil];
iconBobble.imageView.animationImages = images;
iconBobble.imageView.animationDuration = 1.5;
iconBobble.imageView.animationRepeatCount = 1;
[iconBobble.imageView startAnimating];

你可能有一张灰色的图片,它会停留在动画的结尾处吗? - iphonic
2个回答

8

adjustsImageWhenHighlighted 属性将解决您的问题。

这段代码将解决您的问题....

-(IBAction)animateButton:(id)sender
{
    [iconBobble setAdjustsImageWhenHighlighted:NO];

    NSArray *images = [[NSArray alloc] init];
    images = [NSArray arrayWithObjects:
              [UIImage imageNamed:IMAGE1],
              [UIImage imageNamed:IMAGE2],
              [UIImage imageNamed:IMAGE3],
              [UIImage imageNamed:IMAGE4],
              nil];

    float animationDuration = 1.5;
    iconBobble.imageView.animationImages = images;
    iconBobble.imageView.animationDuration = animationDuration;
    iconBobble.imageView.animationRepeatCount = 1;
    [iconBobble.imageView startAnimating];
    [self performSelector:@selector(stopButtonAnimation) withObject:nil afterDelay:animationDuration];
}
-(void)stopButtonAnimation
{
    [iconBobble.imageView stopAnimating];
}

这对我来说运作得很好 :-)


太棒了!这很管用。顺便说一下,我不需要包含“stopButtonAnimation”方法或调用。动画会自己停止。也许你有其他代码作为回调执行,但动画在指定的时间后会自动停止。干杯! - JimmyJammed

0

设置 yourButton.backgroundColor = [UIColor clearColor];



网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接