All Projects → greenhalolabs → Emailautocompletetextview

greenhalolabs / Emailautocompletetextview

Licence: apache-2.0
An AutoCompleteTextView optimized for email auto-complete.

Programming Languages

java
68154 projects - #9 most used programming language

EmailAutoCompleteTextView

EmailAutoCompleteTextView inherits from AutoCompleteTextView and uses the unique emails associated with the device to provide auto-complete functionality for email input fields. It also provides an "x" button on the right hand side as an easy way to clear text.

EmailAutoCompleteTextView Screenshot

NOTE: since this view uses AccountManager to get the emails on the device, you must include the following in your AndroidManifest.xml:

  <uses-permission android:name="android.permission.GET_ACCOUNTS"/>

Please view the sample application under example/ for more details.

Including EmailAutoCompleteTextView using Gradle:

Add the following to your build.gradle:

	repositories {
    	mavenCentral()
	}
	dependencies {
		compile 'com.greenhalolabs:emailautocompletetextview:1.3.1'
	}

Usage:

In XML:

<com.greenhalolabs.emailautocompletetextview.EmailAutoCompleteTextView
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:dropDownSelector="@drawable/some_drawable"
    android:hint="@string/enter_an_email"
    android:imeActionLabel="@string/sign_up"
    app:clearButtonDrawable="@drawable/close" />

Programmatically:

EmailAutoCompleteTextView emailAutoCompleteTextView = new EmailAutoCompleteTextView(context);
emailAutoCompleteTextView.setHint(R.string.enter_an_email);
emailAutoCompleteTextView.setClearButtonEnabled(true); // defaults to true
emailAutoCompleteTextView.setClearButtonResId(R.drawable.close);

Styling:

Since EmailAutoCompleteTextView inherits from AutoCompleteTextView, styling is similar to styling an AutoCompleteTextView. The drop down item layout used is android.R.layout.simple_dropdown_item_1line, to provide a custom styling for this, add the following to your application theme:

<item name="android:dropDownItemStyle">@style/CustomStyle</item>
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].