NavigationBarItems 中的分段样式选择器对齐

Segmented style picker alignment in NavigationBarItems

我现在正致力于将分段样式选择器放入 NavigationBarItems 中。 这是我正在使用的代码:

struct ContentView: View {
    let modes = ["temperature", "distance"]

    var body: some View {
        NavigationView {
            ZStack {
                ...
                }
            }
            .navigationBarItems (leading:
                                    Picker ("Select mode:", selection: $currentMode) {
                                        ForEach (0..<mods.count) {
                                            Text(self.mods[[=10=]])
                                        }
                                    }
                                    .pickerStyle(SegmentedPickerStyle())
            )
        }
    }
}

如果我使用 leading:,选择器显示在左侧,如果我使用 trailing:,则选择器显示在右侧。我怎样才能把它放在中心?

改用.toolbar,比如

ZStack {
    Text("Demo")
}
.toolbar {
    ToolbarItem(placement: .principal) {
        Picker ("Select mode:", selection: $currentMode) {
            ForEach (0..<modes.count) {
                Text(self.modes[[=10=]])
            }
        }
        .pickerStyle(SegmentedPickerStyle())
    }
}