TestsTested | ✓ |
LangLanguage | Obj-CObjective C |
License | BSD |
ReleasedLast Release | Mar 2024 |
Maintained by skywinder, ZWExt, NoorulAinAli.
Please welcome: ActionSheetPicker-3.0!
pod 'ActionSheetPicker-3.0', '~> 2.3.0'
(iOS 5.1.1-9.x compatible!)
##ActionSheetPicker = UIPickerView + UIActionSheet ##
Well, that's how it started. Now, the following is more accurate:
Easily present an ActionSheet with a PickerView, allowing user to select from a number of immutable options.
There are 4 distinct picker view options: ActionSheetStringPicker
, ActionSheetDistancePicker
, ActionSheetDatePicker
, and ActionSheetCustomPicker
. We'll focus here on how to use the ActionSheetStringPicker
since it's most likely the one you want to use.
For detailed info about customisations, please look BASIC USAGE
For detailed examples, please check Example Projects in this repo.
Swift:
ActionSheetMultipleStringPicker.show(withTitle: "Multiple String Picker", rows: [
["One", "Two", "A lot"],
["Many", "Many more", "Infinite"]
], initialSelection: [2, 2], doneBlock: {
picker, indexes, values in
print("values = \(values)")
print("indexes = \(indexes)")
print("picker = \(picker)")
return
}, cancel: { ActionMultipleStringCancelBlock in return }, origin: sender)
Objective-C:
// Inside a IBAction method:
// Create an array of strings you want to show in the picker:
NSArray *colors = [NSArray arrayWithObjects:@"Red", @"Green", @"Blue", @"Orange", nil];
[ActionSheetStringPicker showPickerWithTitle:@"Select a Color"
rows:colors
initialSelection:0
doneBlock:^(ActionSheetStringPicker *picker, NSInteger selectedIndex, id selectedValue) {
NSLog(@"Picker: %@, Index: %@, value: %@",
picker, selectedIndex, selectedValue);
}
cancelBlock:^(ActionSheetStringPicker *picker) {
NSLog(@"Block Picker Canceled");
}
origin:sender];
// You can also use self.view if you don't have a sender
##Installation##
CocoaPods is a dependency manager for Cocoa projects.
You can install it with the following command:
$ gem install cocoapods
To integrate ActionSheetPicker-3.0 into your Xcode project using CocoaPods, specify it in your Podfile
:
source 'https://github.com/CocoaPods/Specs.git'
use_frameworks!
pod 'ActionSheetPicker-3.0'
Then, run the following command:
$ pod install
To import pod you should add string:
Obj-c
projects: #import "ActionSheetPicker.h"
Swift
projects: import ActionSheetPicker_3_0
Carthage is a decentralized dependency manager that automates the process of adding frameworks to your Cocoa application.
You can install Carthage with Homebrew using the following command:
$ brew update
$ brew install carthage
To integrate ActionSheetPicker-3.0 into your Xcode project using Carthage, specify it in your Cartfile
:
github "skywinder/ActionSheetPicker-3.0"
If you prefer not to use either of the aforementioned dependency managers, you can integrate ActionSheetPicker-3.0 into your project manually.
The "old school" way is manually add to your project all from Pickers folder.
cd
-ing into your top-level project directory, and entering the following command:$ git submodule add https://github.com/skywinder/ActionSheetPicker-3.0.git
ActionSheetPicker-3.0
folder, and drag CoreActionSheetPicker.xcodeproj
into the file navigator of your app project.CoreActionSheetPicker.framework
.+
button at the top left of the panel and select "New Copy Files Phase". Rename this new phase to "Copy Frameworks", set the "Destination" to "Frameworks", and add CoreActionSheetPicker.framework
.open ActionSheetPicker-3.0.xcworkspace
Here is 4 projects:
iOS 8
)ActionSheetPicker
project)open Example-for-and-6/ActionSheetPicker.xcodeproj
If you've used this project in a live app, please let me know! Nothing makes me happier than seeing someone else take my work and go wild with it.
If you are using ActionSheetPicker-3.0
in your app or know of an app that uses it, please add it to [this] (https://github.com/skywinder/ActionSheetPicker-3.0/wiki/Apps-using-ActionSheetPicker-3.0) list.
ActionSheetPicker was originally created by Tim Cinel (@TimCinel) Since the Tim's repo is not support iOS 7+, I forked from his repo and implement iOS 7-8 support, and also bunch of UI fixes, crash-fixes and different customisation abilities.
And most of all, thanks to ActionSheetPicker-3.0's growing list of contributors.
git checkout -b my-new-feature
)git commit -am 'Add some feature'
)git push origin my-new-feature
)Bug reports, feature requests, patches, well-wishes, and rap demo tapes are always welcome.