![](/img/trans.png)
[英]SwiftUI misleading error: 'Int' is not convertible to 'CGFloat'
[英]'CGFloat is not convertible to 'int'
最近幾個小時,我一直在努力嘗試使用swift修復Xcode 6.2中的單個錯誤。
spriteName = "tiki-top-0\(rand)"
var toptiki = SKSpriteNode(imageNamed: spriteName)
//This line gives me the error
toptiki.position = CGPointMake(0, bottomtiki.position.y + heightBetweenObstacles)
tikiSet.addChild(toptiki)
toptiki.physicsBody = SKPhysicsBody(rectangleOfSize: toptiki.size)
toptiki.physicsBody?.dynamic = false
toptiki.physicsBody?.categoryBitMask = category_tiki
toptiki.physicsBody?.contactTestBitMask = category_car
我一直到處搜索,由於某種原因,我真的只是認為某個地方存在語法錯誤。 自從更新Xcode 6及其beta以來,我在PhysicalBody?.contactTestBitMask上也遇到了同樣的問題。 沒必要。 但是現在由於某種原因,它必須被鏈接起來。
我在這里沒有使用CGFloat,為什么它告訴我不應該使用int?
非常感謝您的幫助,我真的再也無法炒腦了,哈哈
我假設heightBetweenObstacles
是按照以下heightBetweenObstacles
行定義的:
let heightBetweenObstacles = 42
Swift將推斷常量的類型,在這種情況下,它將推斷Int
。 當您嘗試將其添加到CGFloat
( bottomtiki.position.y + heightBetweenObstacles
)時,它會抱怨。 只需顯式指定類型即可:
let heightBetweenObstacles: CGFloat = 42
現在,您可以毫不費力地將常量添加到其他CGFloat
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.