gpt4 book ai didi

swift - 更改 GameViewController 中必须首先执行的场景后出错

转载 作者:行者123 更新时间:2023-11-30 12:26:35 24 4
gpt4 key购买 nike

我创建了一个 HomeScene.sks 和一个 HomeScene.swift。在 GameViewController 中,我已将默认的“GameScene”更改为“HomeScene”,如下所示”

   override func viewDidLoad() {
super.viewDidLoad()

if let view = self.view as! SKView? {
// Load the SKScene from 'HomeScene.sks'
if let scene = SKScene(fileNamed: "HomeScene") {
// Set the scale mode to scale to fit the window
scene.scaleMode = .aspectFill

// Present the scene
view.presentScene(scene)
}

view.ignoresSiblingOrder = true

view.showsFPS = true
view.showsNodeCount = true
}
}

当我在模拟器中运行它时,它显示启动屏幕,但它停止了。在我的 xcode 输出屏幕中我看到:

2017-05-22 21:02:07.910 DiceWar[88707:2060079] -[DiceWar.HomeScene setNormalTexture:]: unrecognized selector sent to instance 0x7fdba6008af0 2017-05-22 21:02:07.915 DiceWar[88707:2060079] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[DiceWar.HomeScene setNormalTexture:]: unrecognized selector sent to instance 0x7fdba6008af0'

我用谷歌搜索了一下,但找不到任何有用的东西。这些线条告诉我什么?我使用了不好的纹理吗?我也尝试将 HomeScene.swift 中的所有代码发送出去,但错误仍然发生。

我不确定这是因为英语不是我的母语还是我的逻辑,但我真的不明白 xcode 试图告诉我什么。

编辑我想我找到了。因为有一些有质感的东西。我从 HomeScene.sks 中删除了一个 Color Sprite,现在它确实启动了。当我更换 Color Sprite 时,没有出现问题,直到我使用了这一行:

settingsButton = self.childNode(withName: "settingsButton") as! SKSpriteNode

奇怪的是,我对另一个图像使用了完全相同的一些行(我使用了 playButton 而不是 settingsButton) playButton 行似乎不是问题。

最佳答案

错误消息表明您的应用程序逻辑正在尝试在类 DiceWar.HomeScene 上调用 setNormalTexture(_:),但该类不知道如何调用处理该方法调用。

来自documentation :

This action can only be executed by an SKSpriteNode object.

关于swift - 更改 GameViewController 中必须首先执行的场景后出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44120684/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com