Swiftpack.co - Package - filipstefansson/AutocompleteField


CocoaPods Compatible Platform

Subclass of UITextField that shows inline suggestions while typing.

  • Plug and play replacement for UITextField.
  • Delimiter support. Perfect when autocompleting email addresses.
  • Two suggestion modes (word and sentence, see API below).
  • Works with custom fonts, borders etc.
  • Super lightweight and zero dependencies.



  • iOS 10.0+
  • Swift 4.2+



Add the following to your Podfile:

target 'MyApp' do
  pod 'AutocompleteField', '~> 2.0'

Swift Package Manager

  • Select File > Swift Packages > Add Package Dependency.
  • Enter https://github.com/filipstefansson/AutocompleteField.git in the Choose Package Repository dialog.

See Apple docs for more information.


  • Copy /Sources/AutocompleteField.swift to your project. There are no other dependencies.


You use this textfield in the same way as the regular UITextField, through Storyboards or programmatically.


import AutocompleteField


let textfield = AutocompleteField(frame: CGRect(x: 20, y: 20, width: 200, height: 40))
textfield.placeholder = "Name"

textfield.suggestions = [
  "George Washington",
  "Thomas Jefferson",
  "John Adams",
  "Theodore Roosevelt",
  "John F. Kennedy",
  "George W. Bush",



The delimiter can be used to only suggest an autocompletion after a specific character is found in the string. In this example we look for the @ character, and then provide suggestions for email providers.

import AutocompleteField


// email textfield autocompleting email providers
let textfield = AutocompleteField(frame: CGRect(x: 20, y: 20, width: 200, height: 40))
textfield.placeholder = "Email"
textfield.keyboardType = .emailAddress

textfield.suggestions = [

// add the delimiter
textfield.delimiter = "@"



| Property | Type | Description | | ------------------- | ---------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | suggestionColor | UIColor | The color of the suggestion. Defaults to the default placeholder color. | | suggestion | String | The current suggestion shown. Read only. | | suggestions | [String] | Array of suggestions. | | suggestionType | SuggestionType | The type of suggestion that should be used. .Word will only hint the the next word in the suggestion and .Sentence will show the whole suggestion. Defaults to .Sentence. | | pixelCorrections | CGPoint | Move the suggestion label up/down left/right. Use this to correct any differences if the suggestion doesn't match the input value for some reason. | | horizontalPadding | CGFloat | Add padding to your textfield. Automatically set when using a borderStyle that has padding. | | delimiter | String | Add a delimiter to only show a suggestion if there's more than one occurance of the delimiter. Perfect for autocompleting email providers. |


Check out the example project.


AutocompleteField is provided under the MIT License. See LICENSE for details.


Stars: 646


Used By

Total: 0


v2.0 - 2020-10-13 08:35:28

Version 2.0 includes a rewrite to make this library work with Swift 4.2 and above, and a new delimiter feature that can be used when autocompleting email providers.

What's new:

  • Rewritten to work with Swift 4.2 and above (closes #3, closes #4, closes #5, closes #6, closes #7, closes #8).
  • Added delimiter feature.
  • Add Swift Package Manager support.

Bug fixes:

  • Fix .Word mode (closes #1).

Breaking changes:

  • suggestion is now read only.
  • autocompleteType has been renamed to suggestionType.
  • pixelCorrection has been renamed to pixelCorrections, and changed from a CGFloat to a CGPoint to support correcting both y and x axis.
  • padding has been renamed to horizontalPadding.
  • completionColor has been renmaed to suggestionColor.

v1.1 - 2015-11-23 17:59:53

  • Added AutocompleteType

v1.0 - 2015-11-08 14:53:20