SwiftUISelector
A perfect option picker. Great for navigation. Simple to use.
Try it out with @fermoya's package SwiftUIPager!
Swift Package Manager
SwiftUISelector is available through Swift Package Manager.
Add it to an existing Xcode project as a package dependency:
- From the File menu, select Swift Packages › Add Package Dependency…
- Enter "https://github.com/p-larson/SwiftUISelector" into the package repository URL text field
or
Copy and Paste SwiftUIPager.swift into your project!
✨
Features - Smooth Selection
- User Control
- Dynamic Options
- Simple Animations
Requirements
- iOS 14, macOS 10.15
- Swift 5.3
Initialization
Important to note:
SelectorView<Option, OptionView>: View where Option: Hashable, OptionView: View
- Use Strings for Options (Intended Initializer)
// SelectorView(selectedOption: Binding<Int>, options: [String])
SelectorView(
selectedOption: $selectedOption,
options: ["Classial", "Star", "Zodiac", "Text Art"]
)
- Custom Options and Option View. (This is to give you a lot of freedom to make the SelectorView fit your needs)
/*
SelectorView(
selectedOption: Binding<Int>,
options: [Option],
@ViewBuilder content: @escaping (Option) -> OptionView
)
**/
SelectorView(selectedOption: $selectedOption, options: [1, 2, 3, 4]) { (option) in
Text(option.description)
.italic()
.padding()
.background(
Rectangle()
.fill(Color.clear)
.border(Color.black, width: 2)
.padding(.bottom, 4)
)
}
.font(
.system(
size: 24,
weight: Font.Weight.black,
design: Font.Design.monospaced
)
)
License
I'm not good with legal stuff, use my code as you wish, feel free to keep the credit tag in the code, idk.
Open Source, do what ever you want. Maybe follow me on Instagram I guess.