アクションが存在しないときにSKAction(名前:)を呼び出すと、アプリケーションが「メモリの問題により終了しました。SKAction(名前が:)のために「メモリの問題によって終了しました」というアプリケーションがクラッシュする
私のアプリには、いくつかのスプライトキットのシーン(.sksファイル)とスプライトキットのアクションファイルがあります。スプライトが押されると、私はそのオブジェクトのSKActionをインスタンス化しようとします。私が要求しているアクションが存在しない場合、アプリケーションはゼロを返す代わりにクラッシュします。それは、システムがすべての行動を通して何らかの形で記憶を解放していないと思われるようです。誰もこの問題を経験しましたか? SKSの量が減少している場合、問題を解決するようだが、それは無限にプリントアウトですので、私は「!!!!!!!アクションをSKSの
func runAction(node:SKNode, actionName:String) {
guard let action = SKAction(named: actionName) else {
print("!!!!!!! action not found: \(actionName)")
return
}
print("found action")
node.run(action)
}
コールが失敗した場合は、メッセージを1回だけ出力し、終了します。 SKAction(named :)の繰り返し呼び出しがありません – rokasoft
ああ、私は同じ関数を再度呼び出すときに 'node.run(action)'を誤読しました。それはすべてそれが与えるのですか?メモリの問題、その他の詳細はありませんか? –
はい。非常に不安定です。メモリの問題は、さまざまな場所(Googleそれ)で発生するようです。それは、アクションの "DB"を検索するようだが、それはメモリリークまたは何かのように思える。 – rokasoft