Skip to content

A generic customizable picker view based on UICollectionView.

License

Notifications You must be signed in to change notification settings

appaction/CollectionPickerView

 
 

Repository files navigation

CollectionPickerView

CI Status Version License Platform Swift

Generic and customizable picker based on UICollectionView. Picker cells are fully customizable.

Supports:

  • Flat/wheel look.
  • Snap to center after scroll.
  • Both horizontal and vertical direction.

Fork of AKPickerView-Swift. Works in iOS 8.

Screenshot

Usage

Since this view is using UICollectionView internally you have to provide data same way as you would do with collection view (using dataSource). You can also use delegate if you want to handle item selection or underlaying UIScrollView callbacks. See example project for details.

Set the direction to vertical.

pickerView.isHorizontal = false

Disable wheel effect of the picker.

pickerView.isFlat = true

Prevent center selection when scrolling.

pickerView.selectCenter = false

Set spacing between cells, default 10.

pickerView.cellSpacing = 10

Set cell size (width for horizontal, height for vertical style), default 100.

pickerView.cellSize = 100

Set wheel effect perspective representation.

pickerView.viewDepth = 2000

Disable fading gradient mask.

pickerView.maskDisabled = true

Current selected index might be obtained from selectedIndex.

NSLog("\(pickerView.selectedIndex)")

And reload the picker view when any change in data set occurs.

pickerView.reloadData()

Example

To run the example project, clone the repo, and run pod install from the Example directory first. Or simplest way is just to run pod try.

Installation

CollectionPickerView is available through CocoaPods. To install it, simply add the following line to your Podfile:

pod "CollectionPickerView"

Author

Tomas Friml, [email protected]

License

CollectionPickerView is available under the MIT license. See the LICENSE file for more info.

About

A generic customizable picker view based on UICollectionView.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Swift 95.9%
  • Ruby 4.1%