0

为什么不能将数据类型更改为Binding<Double>?在 CoreData 定义中,变量定义为 Double。如果我对Binding<String>String 类型的另一个 CoreData 变量尝试相同的操作,我不会收到任何错误,并且一切正常。Xcode 错误:“无法在当前上下文中推断闭包类型”

TextField("motoric1points", text: Binding<Double>(get: {player.motoric1points ?? "<none>"}, set: {player.motoric1points = $0}))

一些进一步的信息:我需要这种形式的 TextField,因为我在使用循环创建的 GridStack 中使用它。对我来说非常重要的是,我可以“实时”编辑变量。

我很高兴得到任何帮助。提前谢谢了!:)

4

1 回答 1

0

我想你想要它反过来:

TextField("motoric1points", text: Binding<String>(
    get: {
        if let motoric1points = player.motoric1points {
            return String(motoric1points)
        } else {
            return "<none>"
        }
    },
    set: {
        player.motoric1points = Double($0)
    }
))
于 2019-12-20T13:56:09.467 回答