@State var volume: Float = 0.0
    
    var body: some View {
        HStack {
            Text("\(volume)").frame(width: 100)
            HStack {
                Image(systemName: "speaker.slash").imageScale(.large)
                Slider(value: $volume)
                Image(systemName: "speaker.3").imageScale(.large)
            }
            .frame(width: 200)
        }
    }
フォーマットする関数を作る
struct ContentView: View {
    @State var volume: Double = 0.0
    
    var body: some View {
        HStack {
            Text("\(format(volume))").frame(width: 100)
            HStack {
                Image(systemName: "speaker.slash").imageScale(.large)
                Slider(value: $volume)
                Image(systemName: "speaker.3").imageScale(.large)
            }
            .frame(width: 200)
        }
    }
}
func format(_ num:Double) -> String {
    let result = String(round(num*100)/100)
    return result
}
スライダーの値の範囲を設定
 L .foregroundColor(Color(red: R/255, green: G/255, blue: B/255, opacity: A))で色を指定している
@State var R:Double = 0
    @State var G:Double = 0
    @State var B:Double = 0
    @State var A:Double = 1
    
    var body: some View {
        VStack(alignment: .center){
            ZStack {
                Image(systemName: "ladybug")
                    .scaleEffect(3)
                Circle()
                    .frame(width:100, height: 100)
                    .padding()
                    .foregroundColor(
                        Color(red: R/255, green: G/255, blue: B/255, opacity: A))
            }
            HStack {
                Circle()
                    .foregroundColor(.red)
                    .frame(width: 20, height: 20)
                Text(String(Int(R))).frame(width: 40)
                Slider(value: $R, in: 0...255).frame(width: 200)
            }
            HStack {
                Circle()
                    .foregroundColor(.green)
                    .frame(width: 20, height: 20)
                Text(String(Int(G))).frame(width: 40)
                Slider(value: $G, in: 0...255).frame(width: 200)
            }
            HStack {
                Circle()
                    .foregroundColor(.blue)
                    .frame(width: 20, height: 20)
                Text(String(Int(B))).frame(width: 40)
                Slider(value: $B, in: 0...255).frame(width: 200)
            }
            HStack {
                Circle()
                    .stroke(lineWidth: 2)
                    .foregroundColor(.blue)
                    .frame(width: 18, height: 18)
                Text(String(round(A*10)/10)).frame(width: 40)
                Slider(value: $A).frame(width: 200)
            }
        }
    }
これは凄い

### よく使う便利な関数
let price = 3520 * 1.24 var ans:Double ans = floor(price) //切り捨て ans = ceil(price) //切り上げ ans = round(price) //四捨五入 // 任意の桁で計算 ans = floor(price/10)*10 //切り捨て ans = ceil(price/10)*10 //切り上げ ans = round(price/10)*10 //四捨五入 var ans: Int ans = max(5, 9) ans = min(5, 9) var v1 = -10, v2 = 20 v1 = min(max(v1, 0), 10) v2 = min(max(v2, 0), 10) let a = 16.5 let b = 18.0 let ans = abs(a - b)
ランナーズハイ状態になってきた