SwiftUI's Picker
on iOS only allows choosing exactly one option. If you need a picker that allows selecting one optional value, or multiple values from a set, you're outta luck. MultiPicker can do all three!
MultiPicker tries to make its API as close to the SwiftUI Picker
's as possible.
MultiPicker supports localization and accessibility and has better default accessibility than Picker
.
MultiPicker supports string initializers as well as custom label views.
MultiPicker has a few additions and deviations from Picker
:
selectionIndicatorPosition(_:)
modifier.mpPickerStyle(_:)
instead of pickerStyle(_:)
modifier.mpTag(_:)
modifier instead of tag(_:)
Usage of MultiPicker
is very similar to Picker
:
struct MyView: View {
@State private var selection: Set<Model> = []
@State private var options: [Model]
var body: some View {
Form {
MultiPicker("Choose something", selection: $selection) {
ForEach(options) { option in
ModelCell(model: option)
.mpTag(option)
}
}
.mpPickerStyle(.navigationLink)
}
}
}
Check the documentation for more in-depth usage.
.xcproject
filePROJECT
Swift Package
+
signhttps://github.com/toastersocks/MultiPicker
into the text field and hit 'Next'link |
Stars: 9 |
Last commit: 3 weeks ago |
Swiftpack is being maintained by Petr Pavlik | @ptrpavlik | @swiftpackco | API | Analytics