5
我试着做一些简单的UIView布局的数学在迅速和尝试下面的代码行...在Swift中用CGFloats做数学的最好方法是什么?
var offset: CGFloat = (bounds.width/2.0) - ((sortedSymptoms.count * bounds.height)/2.0)
,并得到了编译器以下错误:
cannot invoke '-' with an argument list of type '(($T6), ($T17))'
var offset: CGFloat = (bounds.width/2.0) - ((sortedSymptoms.count * bounds.height)/2.0)
~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
编译器错误ISN这一切都很有帮助,但看起来Double,Int和CGFloat之间存在某种类型的冲突。我可以通过在CGFloats的某些显式创建中进行编译,但我无法相信这是做到这一点的正确方法。
var offset: CGFloat = (bounds.width/CGFloat(2.0)) - ((CGFloat(sortedSymptoms.count) * bounds.height)/CGFloat(2.0))
什么是正确的方法?
感谢devforums链接,是的,这是讨厌的,但有道理。我希望他们找到一个优雅的解决方案,我希望我们不必等待下一个WWDC,然后才能开始使用它。 – 2014-09-26 20:28:42