The EditText is the standard text entry widget in Android apps. If the user needs to enter text into an app, this is the primary way for them to do that.
EditText
There are many important properties that can be set to customize the behavior of an EditText. Several of these are listed below. Check out the official text fields guide for even more input field details.
Usage
An EditText is added to a layout with all default behaviors with the following XML:
<EditText
android:id="@+id/et_simple"
android:layout_height="wrap_content"
android:layout_width="match_parent">
</EditText>
Note that an EditText is simply a thin extension of the TextView and inherits all of the same properties.
Retrieving the Value
Getting the value of the text entered into an EditText is as follows:
EditText simpleEditText = (EditText) findViewById(R.id.et_simple);
String strValue = simpleEditText.getText().toString();
Further Entry Customization
We might want to limit the entry to a single-line of text (avoid newlines):
<EditText
android:singleLine="true"
android:lines="1"
/>
You can limit the characters that can be entered into a field using the digits attribute:
<EditText
android:inputType="number"
android:digits="01"
/>
This would restrict the digits entered to just “0” and “1”. We might want to limit the total number of characters with:
<EditText
android:maxLength="5"
/>
Using these properties we can define the expected input behavior for text fields.
Adjusting Colors
You can adjust the highlight background color of selected text within an EditText with the android:textColorHighlight
property: