ios - Spritekit Swift 游戏菜单放大屏幕

标签 ios swift sprite-kit swift2 ios9

我使用 SpriteKit 和 Swift 创建了一个游戏,已进入最后阶段。我在另一个名为 MenuScene.swift 的场景中为其创建了一个菜单,并且放置了一个按钮,以便当您单击它时,它会指向存储我的游戏的 GameScene.swift 文件。但是,每当我单击从菜单转到开始游戏的按钮,它会放大我的游戏很多并完全破坏界面。我怎样才能解决这个问题?这是我的相关 View Controller 编码:

class GameViewController: UIViewController {

override func viewDidLoad() {
    super.viewDidLoad()

    let sceneView = view as! SKView
    // sceneView.showsFPS = true
    // sceneView.showsNodeCount = true
    sceneView.ignoresSiblingOrder = true

    let scene = MenuScene(size: view.bounds.size)
    scene.scaleMode = .ResizeFill
    sceneView.presentScene(scene)
    }

这是我的菜单场景:

import Foundation
import UIKit
import SpriteKit

let buttonTexture = SKTexture(imageNamed: "play")

let button = SKSpriteNode(texture: buttonTexture)

class MenuScene: SKScene {

override func didMoveToView(view: SKView) {

    button.position = CGPointMake(CGRectGetMidX(self.frame), CGRectGetMidY(self.frame))

    self.addChild(button)
}

override func touchesEnded(touches: Set<UITouch>, withEvent event: UIEvent?) {
    for touch: AnyObject in touches {

        let location = touch.locationInNode(self)

        if button.containsPoint(location) {

            startGame()

        }

    }
}

private func startGame() {
    let gameScene = GameScene(size: view!.bounds.size)
    let transition = SKTransition.fadeWithDuration(0.15)
    view!.presentScene(gameScene, transition: transition)
    gameScene.scaleMode = .AspectFill
    }
}

最佳答案

self.scene?.size = self.view!.bounds.size

在 GameScene.swift 中的 didMoveToView

关于ios - Spritekit Swift 游戏菜单放大屏幕,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32677758/

相关文章:

Swift 4 将数据拆分为其他数据 ([Uint8])

ios - SpriteKit 生成随机 curl 线

ios - 无法使用类型的参数列表调用 'GameSetting.init'

ios - Xcode 7 beta 在自动完成时崩溃 - NSRangeException

ios - 固定轮廓宽度的扩展圆

iphone - 在 iOS 应用程序中查看多页 PDF 最优雅的方式是什么?

ios - UIVisualEffectView 不会模糊它是 SKView superview

ios - 更新证书和配置时的问题

swift - 在带有和不带有可选链接的单个元素上使用可选绑定(bind)是什么意思?

ios - Focus相关的Picker控件方法