时间框架内的uibutton动画

时间:2013-12-31 04:36:11

标签: iphone animation uibutton

我有一个按钮。我需要做的是当我点击按钮一旦它会闪烁红色和白色。但是当我在两秒钟内点击按钮两次它将变为红色直到动作完成。我是新的对ios编程如此困惑。提前谢谢。

3 个答案:

答案 0 :(得分:1)

更改您想要制作动画的按钮位置,如top.bottom,left,right。

    [UIView animateWithDuration:0.25 animations:^{
        button.frame =  CGRectMake(130, 30, 0, 0);
    }];

或者

[UIView transitionWithView:button
                  duration:0.4
                   options:UIViewAnimationOptionTransitionCrossDissolve
                animations:NULL
                completion:NULL];

可替换地:

CATransition *animation = [CATransition animation];
animation.type = kCATransitionFade;
animation.duration = 0.5;
[button.layer addAnimation:animation forKey:nil];

答案 1 :(得分:0)

简单, 你可以为最后一个按钮点击时保留一个标志,如果它在两秒内变成红色并在动作完成时将其设置为正常! :)

答案 2 :(得分:0)

也许你应该使用带有2个UITapGestureRecognizers的UIView代替UIButton?其中一个将numberOfTapsRequired = 2,另一个将具有numberOfTapsRequired = 1.使用方法requiresGestureRecognizerToFail确保您不会让它们都调用其目标方法。然后,您可以将任何想要的逻辑添加到点击处理中,并使用计时器

btn.enabled = NO;
if (btn.tag == 0) {

// change to pause button
// start process

btn.tag = 1;
}
else if (btn.tag == 1) {

// change to play button
// stop process

btn.tag = 0;
}
btn.enabled = YES;