繁体   English   中英

按下按钮旋转图像

[英]rotate image on button press

我正在尝试旋转并按下按钮时成像180度。 现在,我可以将其旋转180度,但是当我再次按下该按钮时,图像不会向后旋转。 我觉得我缺少一些简单的东西。

if语句有效,我只是简化了代码,只保留了无效的部分。

        if(self.dropdownConstraint.constant == -78)
    {
        //roate arrow up
        UIView.animateWithDuration(0.5, animations: {
            self.arrow.transform = CGAffineTransformMakeRotation((180.0 * CGFloat(M_PI)) / 180.0)
            self.view.layoutIfNeeded()
        })
    }
    else
    {
        //roate arrow down
        UIView.animateWithDuration(0.5, animations: {
            self.arrow.transform = CGAffineTransformMakeRotation((-180.0 * CGFloat(M_PI)) / -180.0)
            self.view.layoutIfNeeded()
        })            
    }

提前致谢!

变换不是累积的,因此第一个旋转180度(从0开始),第二个旋转-180度(也从零开始),看起来是一样的。 只需修改反向变换即可将旋转度设置回零:

    UIView.animateWithDuration(0.5, animations: {
        self.arrow.transform = CGAffineTransformMakeRotation(0)
        self.view.layoutIfNeeded()
    })

将转换设置为标识以撤消之前的转换:

UIView.animateWithDuration(0.5, animations: {
    self.arrow.transform = CGAffineTransformIdentity;
    self.view.layoutIfNeeded()
})

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM