Awesome Open Source
Awesome Open Source


documentation iOS Swift 4+ Carthage compatible License: MIT

A simple and adaptive UITextField subclass which attaches a contact picker to the textfield's input accessory view for seamless contact access.

Keyboard Appearance - Dark / Light

Note: This Library uses Contacts.framework and hence one needs to provide NSContactsUsageDescription in the app's Info.plist specifying an appropriate reason.


  • Integrated Contacts Access and Permission Handling.
  • Choose between phone number and e-mail address.
  • Adaptable UI.


Documentation can be found here.


To start using the component add it to your project using Carthage or manually as per the Installation section.

The UI component can be used via the ContactsSuggestionTextField class. This control can be used very similar to UITextField - both from Interface Builder, or from code.

To create an instance of the class, use Interface builder, or do it from code. This example will create a field which shows a short name and email address of a contact:

let textField = ContactsSuggestionTextField(frame: CGRect(x: 10, y: 10, width: 200, height: 45))

/// customize the textfield.
/// For Interface Builder, an IBOutlet can be created and the customization can be done as illustrated below.
textField.customize = { builder in
    builder.contactNameStyle = .short
    builder.contactType = .emailAddress

Do something when the user selects a contact like the following:

tf.contactSelectedHandler = { [weak self] contact: String in
    // do something with contact



The control is available through CocoaPods. CocoaPods can be installed using Ruby gems:

$ gem install cocoapods

Then simply add ContactsSuggestionTextField to your Podfile:

pod 'ContactsSuggestionTextField', '~> 0.0.3'

Lastly, let CocoaPods fetch the latest version of the component by running:

$ pod update


The component supports Carthage. Start by making sure you have the latest version of Carthage installed. Using Homebrew run this:

$ brew update
$ brew install carthage

Then add ContactsSuggestionTextField to your Cartfile:

github "paulsumit1993/ContactsSuggestionTextField"

Finally, add the framework to the Xcode project of your App. Link the framework to your App and copy it to the App’s Frameworks directory via the “Build Phases” section.


You can download the latest files from our Releases page. After doing so, copy the files in the ContactsSuggestionTextField folder to your project.


We welcome all contributions. Just open an issue or submit pull requests, and we will take it forward.

Get A Weekly Email With Trending Projects For These Topics
No Spam. Unsubscribe easily at any time.
Swift (95,593
Ios (19,320
Search (2,692
Ui Components (1,693
Keyboard (1,604
Uikit (1,574
Swift4 (1,489
Autocomplete (833
Carthage (817
Storyboard (201
Textfield (146
Related Projects