SwiftUI iOS 14 Ширина средства выбора не может быть изменена - PullRequest
1 голос
/ 13 июля 2020

Я не могу понять, как изменить ширину Picker () в SwiftUI 2, iOS 14. Это ошибка или я что-то упускаю? Кажется, что модификатор ширины применяется только к тексту, но не к серой полосе.

struct ContentView: View {
    @State private var position = 0
    var body: some View {
        VStack {
          Spacer()
            Picker(selection: self.$position, label: Text("")){
                ForEach(0..<50){ i in
                    Text("\(i)")
                }
            }
            .frame(width: 10, height: 50, alignment: .center)
            Spacer()
        }
    }
}

введите описание изображения здесь

1 Ответ

1 голос
/ 13 июля 2020

width: 10 слишком мало ... в любом случае используйте .clipped (или .clipShape), чтобы ограничить рисование за пределами границ

демо

Picker(selection: self.$position, label: Text("")){
    ForEach(0..<50){ i in
        Text("\(i)")
    }
}
.frame(width: 50, height: 150, alignment: .center)
.clipped()       // << here !!
...