• SwiftUI 中Slider的使用


    效果如下

    import SwiftUI
    
    struct ContentView: View {
       
        @State private var value = 0.0
        @State private var isEditing = false
        @State private var value1:Float = 0.0
        
        var body: some View {
            VStack {
                Text("滑块的值:(value,specifier:"%.2f")")
                    .foregroundColor(isEditing ? .red : .black)
                Slider(value: $value, in: 0...100, step: 1, onEditingChanged: { (isEditing) in
                    self.isEditing = isEditing
                }, minimumValueLabel: Text("1"), maximumValueLabel: Text("100")) {
                    Text("11")
                }
                .accentColor(.green)
                .border(Color.red)
                VolumnChangeSlider(percentage: $value1)
                    .frame(height: 40)
                    .padding(.horizontal)
            }
        }
    }
    
    struct VolumnChangeSlider: View{
        @Binding var percentage: Float
        var body: some View{
            GeometryReader { geometry in
                ZStack(alignment: .leading){
                    Rectangle()
                        .foregroundColor(.gray)
                    Rectangle()
                        .foregroundColor(.blue)
                        .frame( geometry.size.width * CGFloat(self.percentage / 100))
                }
                .cornerRadius(12)
                .gesture(DragGesture(minimumDistance: 0).onChanged({ val in
                    self.percentage = min(max(0, Float(val.location.x/geometry.size.width*100)), 100)
                }))
            }
        }
        
    }
    
    
    struct ContentView_Previews: PreviewProvider {
        static var previews: some View {
            ContentView()
        }
    }
    
  • 相关阅读:
    类中代码执行顺序 及 组合
    初识面向对象
    内置函数及匿名函数 补充
    生成器 补充
    再回首 基本数据类型和 if语句
    day 023-python 包
    day022 python (re模块和 模块)
    day021python 正则表达式
    day 020 常用模块02
    android studio 菜鸟实战项目 之 点击事件以及动态添加
  • 原文地址:https://www.cnblogs.com/chaostudy/p/15035170.html
Copyright © 2020-2023  润新知