以下用例:
屏幕底部显示了uibutton,可以为应用启用主要的useCase。如果用户第一次在应用程序中登录,我想通过将其设置为突出显示状态来显示该按钮的精彩动画 - 但是 - 我希望动画至少具有4个状态(按钮具有不同颜色的圆环) - 在高光动画期间,我想在快速动画中为每个状态添加1个铃声
任何人都知道如何做到这一点?
(我不想为此使用单独的imageView)
更新
感谢帮助 - 我找到了一个有效的解决方案。
我已经将UIButton子类化并覆盖了setHighlighted:(BOOL)highlighted
方法。在方法内部,我检查是否要使用自定义突出显示。
突出显示本身是由..
完成的 [UIView transitionWithView:self.imageView duration:0.1f options:UIViewAnimationOptionTransitionCrossDissolve animations:^{ self.imageView.image = [UIImage imageNamed:@"xyz.png"]; } completion:^(BOOL finished) { if(finished)..
重要提示:adjustsImageWhenHighlighted = NO
完美适合我。
答案 0 :(得分:0)
创建一个名为NSInteger
的整数(timerValue
)属性,并将其初始化为0
中的viewDidLoad
。
还可以在任何想要开始动画的位置创建NSTimer
,并安排它每200毫秒调用一个选择器,或者在动画帧之间设置任何时间延迟:
NSTimer *timer = [NSTimer scheduledTimerWithTimeInterval:0.2f
target:self
selector:@selector(handleTimer)
userInfo:nil
repeats:YES];
每次调用timerValue
时,都会根据handleTimer
更改按钮的图像:
-(void)handleTimer
{
switch ( self.timerValue )
{
case 0 :
//load your frame 0 image on button
break;
case 1 :
//load your frame 1 image on button
break;
case 2 :
//load your frame 2 image on button
.
.
.
//etc
}
self.timerValue = self.timerValue+1;
}