Multiple selection view for iOS 7.0+.
SHMultipleSelect is an easy-to-use multiple selection view for iOS 7.0+.
Created by Shamsiddin https://www.linkedin.com/in/shamsiddin
SHMultipleSelect is available through CocoaPods. To install it, simply add the following line to your Podfile:
pod "SHMultipleSelect", "~> 0.2.2"
Pod/Classesfolder to your project
SHMultipleSelect.hand implement
SHMultipleSelectDelegateprotocol
- (void)multipleSelectView:(SHMultipleSelect*)multipleSelectView clickedBtnAtIndex:(NSInteger)clickedBtnIndex withSelectedIndexPaths:(NSArray*)selectedIndexPaths; - (NSString*)multipleSelectView:(SHMultipleSelect*)multipleSelectView titleForRowAtIndexPath:(NSIndexPath*)indexPath; - (BOOL)multipleSelectView:(SHMultipleSelect*)multipleSelectView setSelectedForRowAtIndexPath:(NSIndexPath*)indexPath;
#pragma mark - SHMultipleSelectDelegate
(void)multipleSelectView:(SHMultipleSelect *)multipleSelectView clickedBtnAtIndex:(NSInteger)clickedBtnIndex withSelectedIndexPaths:(NSArray *)selectedIndexPaths { if (clickedBtnIndex == 1) { // Done btn
for (NSIndexPath *indexPath in selectedIndexPaths) {
NSLog(@"%@", _dataSource[indexPath.row]);
}
} }
(NSString *)multipleSelectView:(SHMultipleSelect *)multipleSelectView titleForRowAtIndexPath:(NSIndexPath *)indexPath { return _dataSource[indexPath.row]; }
(BOOL)multipleSelectView:(SHMultipleSelect *)multipleSelectView setSelectedForRowAtIndexPath:(NSIndexPath *)indexPath { BOOL canSelect = NO; if (indexPath.row == _dataSource.count - 1) { // last object
canSelect = YES;
} return canSelect; }
SHMultipleSelect uses ARC (Automatic Reference Counting).
If you are using SHMultipleSelect in your non-arc project, you will need to set a
-fobjc-arccompiler flag on all of the SHMultipleSelect source files.
To set a compiler flag in Xcode, go to your active target and select the "Build Phases" tab. Now select all SHMultipleSelect source files, press Enter, insert
-fobjc-arcand then "Done" to disable ARC for SHMultipleSelect.
SHMultipleSelect is available under the MIT license. See the LICENSE file for more info.