我的一个视图控制器中有一个UIButton,其中包含三种不同的状态图像(正常,突出显示和选定)。当我按下此按钮时,它会突出显示,当我释放它时,它会被选中。我想制作一个动画,在 4 秒内将按钮的突出显示图像更改为选定的图像,并淡入左右。
有什么建议吗?
尝试UIView transitionWithView
,首先将普通图像和选定图像设置为 UIButton
,然后在操作处理程序中对更改进行动画处理:
[UIView transitionWithView:self.addListButton
duration:0.3
options:UIViewAnimationOptionTransitionCrossDissolve
animations:^{
[self.addListButton setSelected:YES];
} completion:nil];
我不想更改UIButton
的状态,所以我只是更改了动画块中的正常图像:
[self.addListButton setImage:[UIImage imageNamed:@"icon-addbutton.png"]
forState:UIControlStateNormal];
注册自己的UIButton
子类,并且可能必须使用自定义动画代码覆盖setSelected
和setHighlighted
。更安全的选择是直接子类化UIControl
并重新实现这些选择器,这样您就不会有任何UIButton
特定的旧版。