首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >Swift空白应用程序

Swift空白应用程序
EN

Stack Overflow用户
提问于 2018-06-09 20:28:27
回答 1查看 137关注 0票数 -1

我想学习SpriteKit并遵循本教程,我已经将教程中的相同代码复制并粘贴到GameScene.swift中,并将忍者的图片移动到Assets.xcassets中。然而,当我收到两个错误时,

在我运行它之前,我得到

强制将SkView强制转换为相同类型对

没有影响

在我运行它之后,我还会得到

线程1: EXC_BAD_ACCESS(code=2、address=0x7ffeed594fa8

当我运行它的时候,应用程序就是空白的。应用程序应该显示FPS计数和NodeCount吗?下面是我的代码:

代码语言:javascript
复制
import SpriteKit
import GameplayKit

class GameScene: SKScene {

    override func didMove(to view: SKView) {
        let scene = GameScene(size: view.bounds.size)
        let skView = view as! SKView
        skView.showsFPS = true
        skView.showsNodeCount = true
        skView.ignoresSiblingOrder = true
        scene.scaleMode = .resizeFill
        skView.presentScene(scene)
    }

    override func update(_ currentTime: TimeInterval) {
        // Called before each frame is rendered
    }
}

所有这些代码都是GameScene.swift的,如果有人能帮我,那就太好了!更新:我正在使用Swift 4

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-06-09 21:49:16

看起来你有一个无限的递归。注意,您已经有了一个GameScene实例,但是在didMove中,您正在创建另一个GameScene,您将再次呈现该GameScene,该and将再次出现在视图中,并再次调用didMove,依此类推。我认为你的代码应该是这样的:

代码语言:javascript
复制
override func didMove(to view: SKView) {
   self.size = view.bounds.size
   view.showsFPS = true
   view.showsNodeCount = true
   view.ignoresSiblingOrder = true
   self.scaleMode = .resizeFill
}
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50774308

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档