Drop Down Menu for iOS With Search And Other Awesome Customisation
iOS DropDown
Drop Down With Search for iOS.
It's a Swift Library to support Drop Down Menu in iOS.
Support Search and Return Correct index
Customizing
hideOptionWhenSelect = false
Example
To run the example project, clone the repo, and run pod install from the Example directory first.
Features
- Simple UITextField Extension And simple to use  , We can Access all properties of UITextField
 
- DropDown Search can enable or disable
- Change color of List background and selected color
- Change Maximum Hieght of List and Height of each Row
Installation
CocoaPods
Use CocoaPods.
iOSDropDown is available through CocoaPods. To install
it, simply add the following line to your Podfile:
- Add pod 'iOSDropDown'to your Podfile.
- Install the pod(s) by running pod install.
- Add iOSDropDown.frameworkin Build Phases > Link Binary with Libraries
- Add import iOSDropDownin the .swift files where you want to use it
Carthage
- Create a file name Cartfile.
- Add the line github "jriosdev/iOSDropDown".
- Run carthage update.
- Drag the built iOSDropDown.frameworkinto your Xcode project.
Manual
Just clone and add the following Swift files to your project:
- iOSDropDown.swfit
Basic usage ✨
StoryBoard Method
Simply add UITextField to Your ViewCOntroller And Connect @IBOutlet - DropDown Class
@IBOutlet weak var dropDown : DropDown!
// The list of array to display. Can be changed dynamically
dropDown.optionArray = ["Option 1", "Option 2", "Option 3"]
//Its Id Values and its optional
dropDown.optionIds = [1,23,54,22] 
// The the Closure returns Selected Index and String 
dropDown.didSelect{(selectedText , index ,id) in
self.valueLabel.text = "Selected String: \(selectedText) \n index: \(index)"
}
OR
Code Method
let  dropDown = DropDown(frame: CGRect(x: 110, y: 140, width: 200, height: 30)) // set frame
// The list of array to display. Can be changed dynamically
dropDown.optionArray = ["Option 1", "Option 2", "Option 3"]
// Its Id Values and its optional
dropDown.optionIds = [1,23,54,22] 
// The the Closure returns Selected Index and String 
dropDown.didSelect{(selectedText , index ,id) in
self.valueLabel.text = "Selected String: \(selectedText) \n index: \(index)"
    }
}
Other Options
Actions
 dropDown.showList()  // To show the Drop Down Menu
 dropDown.hideList() // To hide the Drop Down Menu
Closures
 listWillAppear() {
  //You can Do anything when iOS DropDown willAppear 
 }
listDidAppear() {
    //You can Do anything when iOS DropDown listDidAppear
}
listWillDisappear() {
  //You can Do anything when iOS DropDown listWillDisappear 
}
 listDidDisappear() {
  //You can Do anything when iOS DropDown listDidDisappear
}
Customize iOSDropDown ?
You can customize these properties of the drop down:
- isSearchEnabled: You can Enable or Disable on DropDown .Default value Is- true
- hideOptionsWhenSelect: This option to hide the list when click option one item. Default value is- true
- selectedRowColor: Color of selected Row item in DropDown Default value is- .cyan
- rowBackgroundColor: Color of DropDown Default value is- .white
- listHeight: The maximum Height of of List. Default value is- 150
- rowHeight: The Height of of List in the List. Default value is- 30
- selectedIndex:For preSelection of any of item in list
- Alingment and Fonts are same as TextField You Can change it
- arrowSize: The Size of arrow . Default value is- 15