小编Ted*_*tes的帖子

SwiftUI Picker 的可点击区域重叠

我目前正在尝试创建一个页面,Picker其中包含三个相邻视图,HStack如下所示:

在此输入图像描述

我制作了一个CustomPicker视图,将框架限制为 90 x 240,然后使用.compositingGroup().clipped()使每个选择器的可选区域不重叠。

自定义选择器.swift

import SwiftUI

struct CustomPicker: View {
    @Binding var selection: Int
    let pickerColor: Color
    
    var numbers: some View {
        ForEach(0...100, id: \.self) { num in
            Text("\(num)")
                .bold()
        }
    }
    
    var stroke: some View {
        RoundedRectangle(cornerRadius: 16)
            .stroke(lineWidth: 2)
    }
    
    var backgroundColor: some View {
        pickerColor
            .opacity(0.25)
    }
    
    var body: some View {
        Picker("Numbers", selection: $selection) {
            numbers
        }
        .frame(width: 90, height: 240)
        .compositingGroup()
        .clipped()
        .pickerStyle(.wheel) …
Run Code Online (Sandbox Code Playgroud)

ios swift swiftui swiftui-picker

5
推荐指数
2
解决办法
2402
查看次数

标签 统计

ios ×1

swift ×1

swiftui ×1

swiftui-picker ×1