Swiftui JSON内容中的变量作为计数器的值
我真的要开始编程了,很抱歉我的菜鸟问题。 我正在使用Xcode/SwiftUI,并试图在inial值来自JSON文件的地方创建一个计数器 我设法提取字符串的值。。。但在花了几个小时试图找出如何将初始计数器设置为值“hull”后,我终于请求帮助了 我的JSON文件的格式如下:Swiftui JSON内容中的变量作为计数器的值,swiftui,Swiftui,我真的要开始编程了,很抱歉我的菜鸟问题。 我正在使用Xcode/SwiftUI,并试图在inial值来自JSON文件的地方创建一个计数器 我设法提取字符串的值。。。但在花了几个小时试图找出如何将初始计数器设置为值“hull”后,我终于请求帮助了 我的JSON文件的格式如下: { "id": 1, "name": "Chaser", "type": "Level 1", "hull": 5, "shields": 0,
{
"id": 1,
"name": "Chaser",
"type": "Level 1",
"hull": 5,
"shields": 0,
"imageName": "chaser"
},
我的结构是这样的:
struct Enemy: Hashable, Codable, Identifiable {
var id: Int
var name: String
var type: String
var hull: Int
var shields: Int
fileprivate var imageName: String
}
struct EnemyDetails: View {
@State var count : Int = 0
var enemy : Enemy
var body: some View {
VStack {
EnemyImage(image: Image("EnemyImage"))
.frame(height:300)
VStack {
Spacer()
Text(enemy.name).font(.title)
Text(enemy.type)
Spacer()
HStack {
Button(action: {self.count = self.count - 1}) {
Image("Decrease")
}.padding(20)
Text("\(count)").font(.system(size:100)).padding(20)
Button(action: {self.count = self.count + 1}) {
Image("Increase")
}.padding(20)
}
Spacer()
}
}
}
}
在我的页面中,我的代码如下:
struct Enemy: Hashable, Codable, Identifiable {
var id: Int
var name: String
var type: String
var hull: Int
var shields: Int
fileprivate var imageName: String
}
struct EnemyDetails: View {
@State var count : Int = 0
var enemy : Enemy
var body: some View {
VStack {
EnemyImage(image: Image("EnemyImage"))
.frame(height:300)
VStack {
Spacer()
Text(enemy.name).font(.title)
Text(enemy.type)
Spacer()
HStack {
Button(action: {self.count = self.count - 1}) {
Image("Decrease")
}.padding(20)
Text("\(count)").font(.system(size:100)).padding(20)
Button(action: {self.count = self.count + 1}) {
Image("Increase")
}.padding(20)
}
Spacer()
}
}
}
}
我希望值“Count”是JSON文件中的值“Hull”
有人能帮忙吗?
非常感谢 在这里
struct EnemyDetails: View {
var enemy : Enemy
@State private var count : Int // don't initialise here
init(enemy: Enemy) {
self.enemy = enemy
_count = State(initialValue: enemy.hull) // << initial state !!
}
// ... other your code
struct EnemyDetails:View{
敌人:敌人
@国家私有变量计数:Int//不要在此处初始化
初始化(敌人:敌人){
敌人
_count=状态(初始值:敌方.hull)//在这里
struct EnemyDetails: View {
var enemy : Enemy
@State private var count : Int // don't initialise here
init(enemy: Enemy) {
self.enemy = enemy
_count = State(initialValue: enemy.hull) // << initial state !!
}
// ... other your code
struct EnemyDetails:View{
敌人:敌人
@国家私有变量计数:Int//不要在此处初始化
初始化(敌人:敌人){
敌人
_计数=状态(初始值:敌方.hull)//