我想点击按钮并用动画旋转图像。动画完成后,我想将新的旋转图像设置为按钮。但是由于某种原因,旋转的图像没有设置为正常状态的按钮。它设置在突出显示状态。我有布尔值isPriceOrdered,根据这个bool值我向上或向下设置箭头。这是一个代码:
UIView.animateWithDuration(0.3, animations: {
self.buttonimage.imageView!.transform = CGAffineTransformMakeRotation(CGFloat(M_PI))
}, completion: {
(success) in
if self.isPriceOrderAsc == true {
self.isPriceOrderAsc = false
let rotatedimage = UIImage(CGImage: (self.buttonimage.imageView!.image!.CGImage)!, scale: CGFloat(1.0), orientation: UIImageOrientation.DownMirrored)
self.buttonimage.setImage(rotatedimage, forState: .Normal)
}else{
self.isPriceOrderAsc = true
let rotatedimage = UIImage(CGImage: (self.buttonimage.imageView?.image!.CGImage)!, scale: CGFloat(1.0), orientation: UIImageOrientation.UpMirrored)
self.buttonimage.setImage(rotatedimage, forState: .Normal)
}
})
答案 0 :(得分:1)
问题是我在转换图像之前保存了按钮的原始变换。在变换图像度之前保存变换原始图像。这是一个代码:
region.notifyOnEntry = YES;
region.notifyOnExit = YES;
在将图像设置为按钮之前旋转图像后,将按钮变换为原始按钮。