加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

Swift中的viewWillLayoutSubviews

发布时间:2020-12-14 05:02:10 所属栏目:百科 来源:网络整理
导读:我正在尝试翻译SKScene * scene = [GameScene sceneWithSize:skView.bounds.size];快速但我得到了错误 ‘sceneWithSize’ is unavailable: use object construction ‘SKScene(size:)’. 我正在使用viewWillLayoutSubviews并删除viewDidLoad(),因为它没有为
我正在尝试翻译SKScene * scene = [GameScene sceneWithSize:skView.bounds.size];快速但我得到了错误

‘sceneWithSize’ is unavailable: use object construction ‘SKScene(size:)’.

我正在使用viewWillLayoutSubviews并删除viewDidLoad(),因为它没有为我选择的设备的屏幕尺寸提供正确的尺寸.它实际上让我怀疑为什么viewDidLoad()存在?

override func viewWillLayoutSubviews() {
    super.viewWillLayoutSubviews();
    let skView = self.view as SKView;
    if skView.scene != nil {
        skView.showsFPS = true;
        skView.showsNodeCount = true;
        skView.showsPhysics = true;
        // Create and configure the scene

        let scene:SKScene = GameScene.sceneWithSize(skView.bounds.size); // ERROR MESSAGE!
        //    Objective-C code in next 2 lines
        //    SKScene * scene = [GameScene sceneWithSize:skView.bounds.size];
        //    scene.scaleMode = SKSceneScaleModeAspectFill;

        // Present Scene
        skView.presentScene(scene)
    }
}

解决方法

尝试改变

let scene:SKScene = GameScene.sceneWithSize(skView.bounds.size);

通过

let scene:SKScene = GameScene(size: skView.bounds.size);

希望这可以帮助

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读