gpt4 book ai didi

ios - swift plist 解码器全局 Spritekit

转载 作者:搜寻专家 更新时间:2023-11-01 06:57:12 26 4
gpt4 key购买 nike

我想要我的 plist 中的字典,我可以在整个游戏场景中使用它。但是在我的解决方案中,我总是必须调用 parseConfig 函数才能从 plist 中获取字典。

struct Config: Decodable {
private enum CodingKeys: String, CodingKey {
case zPositions, enemy, player
}

let zPositions: [String:Double]
let enemy: [String:[String:Double]]
let player: [String:[String:Double]]
}

func parseConfig() -> Config {
let url = Bundle.main.url(forResource: "Config", withExtension: "plist")!
let data = try! Data(contentsOf: url)
let decoder = PropertyListDecoder()
return try! decoder.decode(Config.self, from: data)
}

最佳答案

尝试创建惰性属性。

类似于:- 如果使用 gloabaly

var parsedConfig: Config  = {
let url = Bundle.main.url(forResource: "Config", withExtension: "plist")!
let data = try! Data(contentsOf: url)
let decoder = PropertyListDecoder()
return try! decoder.decode(Config.self, from: data)
}()

如果在类中,在var之前添加lazy

关于ios - swift plist 解码器全局 Spritekit,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52908684/

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