动画uibutton应用图像迅速

时间:2015-05-08 11:09:36

标签: ios swift animation

我希望通过在按钮上依次改变两个图像来应用动画效果。我已应用以下代码但无法看到动画效果。 我已正确应用IBOutlets。

    var image1:UIImage = UIImage(named: "img_mic_off")!
    var image2:UIImage = UIImage(named: "img_mic_on")!
    btnRecord.imageView?.animationImages = [image1,image1]
    btnRecord.imageView?.animationDuration = 1.0
    btnRecord.imageView!.startAnimating()

请帮我解决为什么它不能使用这个给定代码的问题。提前谢谢。

3 个答案:

答案 0 :(得分:6)

看看我做了什么。图像正在发生变化。所以我希望这是你真正需要的。

var image1:UIImage = UIImage(named: "img_mic_off")!
var image2:UIImage = UIImage(named: "img_mic_on")!
btn.setImage(image1, forState: UIControlState.Normal)
btn.imageView!.animationImages = [image1, image2]
btn.imageView!.animationDuration = 1.0
btn.imageView!.startAnimating()

答案 1 :(得分:1)

动画属性只是在图像数组中循环,并以durationInSeconds / numberOfImagesInArray的间隔更改它们。

因此,要获得平滑的图像动画,您需要拥有一组中间过渡图像。

设置的图像数量越多,动画越平滑。

答案 2 :(得分:0)

快捷键5

别忘了拆包! ?

        if let image1 = UIImage(named: "img_mic_off"), let image2 = UIImage(named: "img_mic_on") {
        btn.setImage(image1, for: UIControl.State.normal)
        btn.imageView?.animationImages = [image1, image2]
        btn.imageView?.animationDuration = 1.0
        btn.imageView?.startAnimating()
    }