我只是想绕过CGRectGetWidth的CGFloat返回值.
override func layoutSubviews() { let roundedWidth = roundf(CGRectGetWidth(self.bounds)) ... }
编译器不会让我,给出错误:
‘NSNumber’不是’CFloat’的子类型.
我想我有一些基本的东西,我在这里失踪. roundf正在使用CFloat作为参数,那么如何将CGFloat转换为CFloat进行转换?
更新:
现在使用round而不是roundf,但我仍然得到相同的错误.我已经尝试清理项目并重新启动Xcode.
CGRect成员是CGFloats,尽管他们的名字,实际上是CDoubles.因此,您需要使用round(),而不是roundf()
原文链接:https://www.f2er.com/swift/318739.htmloverride func layoutSubviews() { let roundedWidth = round(CGRectGetWidth(self.bounds)) ... }