繁体   English   中英

快速将自定义类型转换为CGFloat

[英]Convert custom type to CGFloat in swift

我有自己的小课:

class EPPercent {
    init(_: CGFloat) {

    }
}

现在,我想将此类的元素转换为CGFloat:

var percent: Any = 0
percent = EPPercent(100)
var toCGFloat = CGFloat(percent)

这给出了一个错误:

“无法为类型为'(EPPercent)'的参数列表调用类型'CGFloat'的初始化程序”

我该怎么做呢?

谢谢您的帮助 ;)

您可以创建CGFloatextension ,并创建一个接受EPPercent实例的自定义初始化程序。

class EPPercent {
    let value: CGFloat
    init(_ value: CGFloat) {
        self.value = value
    }
}

extension CGFloat {
    init(_ percent: EPPercent) {
        self = percent.value
    }
}

var percent = EPPercent(100)
var toCGFloat = CGFloat(percent)

如果您遇到任何问题,请告诉我。

暂无
暂无

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

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