小编Ian*_*Ian的帖子

在 SwiftUI 中使用 Toggle 禁用 Slider 会导致样式问题

使用切换来禁用/启用滑块会导致样式反转,直到您与滑块交互为止。我显然以错误的方式处理这个问题!

struct ContentView: View {
@State var isActive = true
@State var value :Double = 2.0

var body: some View {
    VStack {
        Section(header:
            HStack {
                Toggle(isOn: $isActive)
                    {}.toggleStyle(SwitchToggleStyle(tint: .purple))
            }
        ) {
            HStack {
                Slider(value: $value, in: 0...4, step: 1)
                    .accentColor(isActive ? .purple : .secondary).disabled(!isActive)
                }.pickerStyle(SegmentedPickerStyle())
        }
    }
}
}
Run Code Online (Sandbox Code Playgroud)

初始状态

禁用切换 - 请注意滑块样式错误,但颜色正确

再次启用切换 - 请注意滑块样式现已禁用,并且颜色(正确的紫色)处于禁用样式

如果您与重新启用的滑块进行交互,样式会自行修复。

我希望我在这里做一些愚蠢的事情......

swiftui

4
推荐指数
1
解决办法
1422
查看次数

标签 统计

swiftui ×1