我希望我的按钮图像在单击时动画,并在再次单击时向后动画。
当我单击一次按钮时,我希望右边的箭头(这是检查器设置的图像)顺时针旋转90度(为此我有一组图像),当按钮再次单击按钮
但是Button具有一个带有图像插图的自定义类,我不知道如何正确地为图像设置动画。
class ButtonWithImage: UIButton {
override func layoutSubviews() {
super.layoutSubviews()
if imageView != nil {
imageEdgeInsets = UIEdgeInsets(top: 5, left: (bounds.width - 35), bottom: 5, right: 5)
titleEdgeInsets = UIEdgeInsets(top: 0, left: 0, bottom: 0, right: (imageView?.frame.width)!)
}
}
}
我已经尝试过此代码:
var image1:UIImage = UIImage(named: "img1")!
var image2:UIImage = UIImage(named: "img2")!
btn.setImage(image1, forState: UIControlState.Normal)
btn.imageView!.animationImages = [image1, image2]
btn.imageView!.animationDuration = 1.0
btn.imageView!.startAnimating()
但是它设置了没有图像插入的新图像,并且动画从不停止,而是再次循环。当我添加
btn.imageView!.stopAnimating()
动画根本不起作用。
是否有更好的方法来获得所需的动画?