Shari for Swift
Shari is the alternative to the library of UIPickerView (drum roll) in Swift. You can select a item using UITableView.
Requirements
- iOS 10.0+
- Xcode 9+
- Swift 4+
CocoaPods
Shari is available through CocoaPods. To install it, simply add the following line to your Podfile:
pod "Shari"Then, run the following code:
$ pod installCarthage
Carthage is a decentralized dependency manager for Cocoa applications.
$ brew update
$ brew install carthageTo integrate Shari into your Xcode project using Carthage, specify it in your Cartfile:
github "nakajijapan/Shari"
Then, run the following command to build the Shari framework:
$ carthage updateUsage
To run the example project, clone the repo, and run pod install from the Example directory first.
ViewController
- UINavigationController
let modalNavigationController = storyboard!.instantiateViewController(withIdentifier: "ModalNavigationController") as! ShariNavigationController
modalNavigationController.parentNavigationController = navigationController
navigationController?.si.present(modalNavigationController)- UITabBarController
let modalNavigationController = storyboard!.instantiateViewController(withIdentifier: "ModalNavigationController") as! ShariNavigationController
modalNavigationController.parentTabBarController = tabBarController
tabBarController?.si.present(modalNavigationController)You can change background color using following code:
ShariSettings.backgroundColorOfOverlayView = UIColor.redColor()You can change with following code whether view should transform scale down:
ShariSettings.shouldTransformScaleDown = trueModalViewController
- Create NavigationController and ViewController in storyboards.
- Input
Shari.NavigationControllerin Custom Class for NavigationController.
Closing a window
You can close using the following code in viewController:
let currentNavigationController = navigationController
currentNavigationController?.si.dismiss {
// something
}Author
nakajijapan, [email protected]
License
Shari is available under the MIT license. See the LICENSE file for more info.

