Xcode 多滑块驱动';t工作正常吗?

Xcode 多滑块驱动';t工作正常吗?,xcode,int,slider,double,swiftui,Xcode,Int,Slider,Double,Swiftui,嗨,我是韩国学生,在申请页面上做自我诊断 我用滑块做了自我诊断。我需要8个滑块,因为我有8个问题。 起初我制作了第一个滑块,效果很好。但是,我做了更多的滑块,我得到了错误消息。我想删除错误消息,使我的网页工作良好。我尝试了斯威夫特建议的一切。 我想知道为什么在制作第二个和更多滑块后会出现错误消息 这是我的代码,我使用SwiftUI,我的Xcode版本是11.2.1 import SwiftUI struct ContentView: View { @State private var valu

嗨,我是韩国学生,在申请页面上做自我诊断 我用滑块做了自我诊断。我需要8个滑块,因为我有8个问题。 起初我制作了第一个滑块,效果很好。但是,我做了更多的滑块,我得到了错误消息。我想删除错误消息,使我的网页工作良好。我尝试了斯威夫特建议的一切。 我想知道为什么在制作第二个和更多滑块后会出现错误消息

这是我的代码,我使用SwiftUI,我的Xcode版本是11.2.1

import SwiftUI

struct ContentView: View {
@State private var value1: Double = 0
@State private var value2: Double = 0
@State private var value3: Double = 0
@State private var value4: Double = 0
@State private var value5: Double = 0
@State private var value6: Double = 0
@State private var value7: Double = 0
@State private var value8: Double = 0
var body: some View {
    VStack {
        Text("앉아서 책(신문 잡지 서류 등)을 읽을 때")
        Slider(value: $value1,in: 0...3, step: 1).padding(.horizontal,30)
        HStack {
            Text("전혀").offset(x:17)
            Spacer()
            Text("조금").offset(x:22)
            Spacer()
            Text("상당히").offset(x:20)
            Spacer()
            Text("매우 많이")
        }.padding(.horizontal,10)
        Text("TV볼 때")
        Slider(value: $value2,in: 0...3, step: 1).padding(.horizontal,30)
        HStack {
            Text("전혀").offset(x:17)
            Spacer()
            Text("조금").offset(x:22)
            Spacer()
            Text("상당히").offset(x:20)
            Spacer()
            Text("매우 많이")
        }.padding(.horizontal,10)
        Text("공공장소(모임, 극장 등)에서 가만히 앉아 있을 때")
        Text("정차 없이 1시간 동안 운행 중인 차에 승객으로 앉아 있을 때")
        Text("오후에 주위상황이 허락되어 쉬려고 누워 있을 때")
        Text("앉아서 상대방과 이야기 할 때")
        Text("반주를 곁들이지 않은 점심식사 후 조용히 앉아 있을 때")
        Text("교통 혼잡으로 몇 분 동안 멈춰선 차 안에서")
    }
}
}
另外,如果我将value1设置为Int,则swift会出错

Initializer 'init(value:in:step:onEditingChanged:)' requires that 'Int.Stride' (aka 'Int') conform to 'BinaryFloatingPoint'
所以我改变了

Slider(value: $value1,in: 0...3, step: 1).padding(.horizontal,30)
to
Slider(value: $value1,in: 0...3, step: 1.0).padding(.horizontal,30)
然后我在上收到了新的错误消息

.padding(.horizontal,10)
and error message is
'Int' is not convertible to 'CGFloat?'
我只是想知道到底是怎么回事


如果您能提出解决方案,我将不胜感激。

这是SwiftUI错误。您只是在一个容器中有太多的视图(在您的案例中是top-VStack)。不允许超过10个,所以只需使用下面这样的组(或者为类似的模式创建子视图并单独提取)


它工作!!!我知道容器不允许超过10个,但是,我从来没有想到这个错误是由这个问题引起的,非常感谢!!
struct ContentView: View {
    @State private var value1: Double = 0
    @State private var value2: Double = 0
    @State private var value3: Double = 0
    @State private var value4: Double = 0
    @State private var value5: Double = 0
    @State private var value6: Double = 0
    @State private var value7: Double = 0
    @State private var value8: Double = 0
    var body: some View {
        VStack {
            Group {
                Text("앉아서 책(신문 잡지 서류 등)을 읽을 때")
                Slider(value: $value1,in: 0...3, step: 1).padding(.horizontal,30)
                HStack {
                    Text("전혀").offset(x:17)
                    Spacer()
                    Text("조금").offset(x:22)
                    Spacer()
                    Text("상당히").offset(x:20)
                    Spacer()
                    Text("매우 많이")
                }.padding(.horizontal,10)
            }
            Group {
                Text("TV볼 때")
                Slider(value: $value2,in: 0...3, step: 1).padding(.horizontal,30)
                HStack {
                    Text("전혀").offset(x:17)
                    Spacer()
                    Text("조금").offset(x:22)
                    Spacer()
                    Text("상당히").offset(x:20)
                    Spacer()
                    Text("매우 많이")
                }.padding(.horizontal,10)
            }

            // ... other grouped sliders here
        }
    }
}