SwiftUI:将选择器设置设置为最后在动态数组中

时间:2020-06-07 17:27:11

标签: swiftui picker

我在详细视图中有一个选择器,可以相应地更改子视图。我可以将其设置为数组中的第一个(索引0),但是对于用户来说,如果默认为最后一个将更加合乎逻辑。

struct ViewDetail: View {

   @State public var selectedYearIndex = 0

.
.
.


Picker(selection: $selectedYearIndex, label: PickerLabel()) {
                    Group {
                        ForEach(0 ..< yearArray.count)) {
                            Text(self.yearArray[$0].description).tag($0)
                        }
                    }
                }

.
.
.

}

有人可以建议一种方法来将“选择器选择”默认设置为可变大小数组中的最后一个索引吗?

有什么想法吗?

1 个答案:

答案 0 :(得分:2)

我能够通过向视图添加以下内容来解决此问题:

.onAppear {
            if self.selectedYearIndex == 0 {
                self.selectedYearIndex = (yearArray.count - 1)
            }
        }

这项工作始终如一,并且没有影响选择器的功能。