快速,旋转图像视图并将旋转图像视图设置为uibutton

时间:2016-01-15 11:49:12

标签: swift uibutton rotation imageview

我想点击按钮并用动画旋转图像。动画完成后,我想将新的旋转图像设置为按钮。但是由于某种原因,旋转的图像没有设置为正常状态的按钮。它设置在突出显示状态。我有布尔值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)
            }
    })

1 个答案:

答案 0 :(得分:1)

问题是我在转换图像之前保存了按钮的原始变换。在变换图像度之前保存变换原始图像。这是一个代码:

    region.notifyOnEntry = YES;
    region.notifyOnExit = YES;

在将图像设置为按钮之前旋转图像后,将按钮变换为原始按钮。