Проблема в том, что ваша пустая метка
label: Text(""),
, даже если метка пуста, она занимает некоторое место с левой стороны сборщика. Вы можете проверить, просто добавив некоторый текст к метке.
Чтобы избавиться от метки, настройте свой код следующим образом:
.pickerStyle(WheelPickerStyle())
.labelsHidden()
Это будет центрировать ваш выбор выбора
Обновление 21.02.2020
Привет, Крис, прилагаю код, который я проверял, и который центрирует сборщик:
struct PickerView: View {
let p:[Vital] = [
.init(name: "0"),
.init(name: "1"),
.init(name: "2"),
.init(name: "3")
]
@State private var sortedby = 0
var body: some View {
Picker(selection: $sortedby, label: Text("")) {
ForEach(p) { post in
Text(post.name)
}
}.pickerStyle(DefaultPickerStyle())
.labelsHidden()
}
}
