swift – 旋转图像-45度

swift – 旋转图像-45度,第1张

概述我正在构建关于FloatingButton的示例. 但是旋转图像有些麻烦.我希望它像这个链接一样旋转 https://github.com/yoavlt/LiquidFloatingActionButton 但我的按钮是: 正如你所看到的,当我第一次点击时,它运行良好:D,它变换为x,但是当我再次点击时,我希望它恢复原状,但它不能很好地运行. 这是我的代码: import UIKitclass 我正在构建关于floatingbutton的示例.

但是旋转图像有些麻烦.我希望它像这个链接一样旋转

https://github.com/yoavlt/LiquidFloatingActionButton

但我的按钮是:

正如你所看到的,当我第一次点击时,它运行良好:D,它变换为x,但是当我再次点击时,我希望它恢复原状,但它不能很好地运行.

这是我的代码:

import UIKitclass VIEwController: UIVIEwController {    @IBOutlet var floatingbutton: UIImageVIEw!    var floatingbuttonIsActive = false    overrIDe func vIEwDIDLoad() {        super.vIEwDIDLoad()        addShadowTofloatingbutton()        let gesture = UITapGestureRecognizer(target: self,action: #selector(floatingbuttonTapped(_:)))        floatingbutton.addGestureRecognizer(gesture)    }    private func addShadowTofloatingbutton() {        floatingbutton.layer.shadowcolor = UIcolor.graycolor().CGcolor        floatingbutton.layer.shadowOffset = CGSize(wIDth: -2,height: 2)        floatingbutton.layer.shadowOpacity = 1        floatingbutton.layer.shadowRadius = 1    }    func floatingbuttonTapped(sender: UITapGestureRecognizer) {        if floatingbuttonIsActive == false {            UIVIEw.animateWithDuration(0.5,delay: 0.0,usingSpringWithdamPing: 0.5,initialSpringVeLocity: 5,options: .CurveEaseInOut,animations: {                self.floatingbutton.transform = CGAffinetransformMakeRotation(CGfloat(M_PI_4))                },completion: { _ in                    self.floatingbuttonIsActive = true            })        } else {            UIVIEw.animateWithDuration(0.5,animations: {                self.floatingbutton.transform = CGAffinetransformMakeRotation(CGfloat(-M_PI_4))                },completion: { _ in                    self.floatingbuttonIsActive = false            })        }    }}
完成后将转换设置为CGAffinetransformIDentity.这是它最初的转变.设置变换时,无论当前处于什么角度,都会告诉它旋转到的绝对角度.
func floatingbuttonTapped(sender: UITapGestureRecognizer) {    if floatingbuttonIsActive == false {        UIVIEw.animateWithDuration(0.5,animations: {            self.floatingbutton.transform = CGAffinetransformMakeRotation(CGfloat(M_PI_4))            },completion: { _ in                self.floatingbuttonIsActive = true        })    } else {        UIVIEw.animateWithDuration(0.5,animations: {            self.floatingbutton.transform = CGAffinetransformIDentity            },completion: { _ in                self.floatingbuttonIsActive = false        })    }}
总结

以上是内存溢出为你收集整理的swift – 旋转图像-45度全部内容,希望文章能够帮你解决swift – 旋转图像-45度所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/1089231.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-05-27
下一篇2022-05-27

发表评论

登录后才能评论

评论列表(0条)

    保存