0
我想減去一些CGFloats,這樣定義的:減法CGFloats的,多義性錯誤斯威夫特3
var panelHeight:CGFloat!
當我嘗試做(screenHeight - panelHeight - tabBarHeight)在下面的代碼,我得到一個錯誤,說我不能在CGFloat和CGFloat!上應用二元運算符,這沒有多大意義,因爲所有三個浮點數都用!聲明。如果我用tabBarHeight!替換tabBarHeight,那麼會出現一個名爲「對成員的模糊引用 - 」的錯誤。
collisionBehavior.addBoundaryWithIdentifier("upperBoundary" as NSCopying, fromPoint: CGPoint(x: 0, y: screenHeight - panelHeight - tabBarHeight), toPoint: CGPoint(x: boundaryX, y: screenHeight - panelHeight - tabBarHeight))
開始 - panelHeight - tabBarHeight'給一個變量。表達式的複雜性可能會導致編譯器顯示無效錯誤。 – Sulthan
我試過了,但錯誤是一樣的 – Alessandro
我認爲這是Swift的一個bug,最好向Apple或swift.org發送一個錯誤報告。一個簡單的解決方法 - '0 + screenHeight - panelHeight - tabBarHeight'。 – OOPer