如何使用 Xcode 7 将 Button 放入带有 Swift 代码的 SpriteKit 中?

How to put Button in SpriteKit with Swift code using Xcode 7?

我尝试在 Xcode 7 Beta 上制作游戏,我几乎完成了但问题是我不知道如何使用 Swift 代码放置按钮,我尝试放置它们在 Main.storyboard 上,但他们的安排不是很好。其中一些变得更大,一些变得更小等等......所以我想知道如何使用代码放置这些按钮,如下图所示。蓝色按钮左起第一个是Leaderboard,然后是Facebook share,twitter share,还有一个默认按钮(可能是Remove Ads)

然后我尝试使用一些代码:

override func didMoveToView(view: SKView) {
    backgroundColor = UIColor.whiteColor()
    
    
    leaderboard()
    facebookShare()
    twitterShare()
}




func leaderboard() {
   let myNode = SKSpriteNode(imageNamed: "buttonLeaderboard")
    myNode.position = CGPointMake(CGRectGetMaxX(self.frame) *0.40, CGRectGetMaxY(self.frame) * 0.25)
    self.addChild(myNode)
}


func facebookShare() {
    let facebookShareNode = SKSpriteNode(imageNamed: "buttonFacebookShare")
    facebookShareNode.position = CGPointMake(CGRectGetMaxX(self.frame) *0.60, CGRectGetMaxY(self.frame) * 0.25)
    self.addChild(facebookShareNode)
}


func twitterShare() {
    let twitterShareNode = SKSpriteNode(imageNamed: "buttonTwitterShare")
    twitterShareNode.position = CGPointMake(CGRectGetMaxX(self.frame) *0.80, CGRectGetMaxY(self.frame) * 0.25)
    self.addChild(twitterShareNode)
}

但它在这些代码上发现了 3 个错误

"myNode.position = CGPointMake(CGRectGetMaxX(self.frame) *0.40, CGRectGetMaxY(self.frame) * 0.25)"

"facebookShareNode.position = CGPointMake(CGRectGetMaxX(self.frame) *0.60, CGRectGetMaxY(self.frame) * 0.25)"

"twitterShareNode.position = CGPointMake(CGRectGetMaxX(self.frame) *0.80, CGRectGetMaxY(self.frame) * 0.25)"

错误说“预期的','分隔符”,但是当我按照错误说的那样做时,它又发现了另外 3 个错误,这次他们说“'*' 不是前缀一元运算符”,在此要做什么案件 ?有人可以帮助我吗?

要修复编译器错误,您基本上只需要在 * 之后添加一个 space,但最好使用更像 Swift 的样式:

myNode.position = CGPoint(x: frame.maxX * 0.4, y: frame.maxY * 0.25)

位置嘛,调整一下x坐标。对于尺寸,最简单的方法是提供相同尺寸的图像,这样您就不必缩放它们了?