InputType
public
interface
InputType
android.text.InputType |
Bit definitions for an integer defining the basic content type of text
held in an Editable
object. Supported classes may be combined
with variations and flags to indicate desired behaviors.
Examples
- A password field with the password visible to the user:
- inputType = TYPE_CLASS_TEXT | TYPE_TEXT_VARIATION_VISIBLE_PASSWORD
- A multi-line postal address with automatic capitalization:
- inputType = TYPE_CLASS_TEXT | TYPE_TEXT_VARIATION_POSTAL_ADDRESS | TYPE_TEXT_FLAG_MULTI_LINE
- A time field:
- inputType = TYPE_CLASS_DATETIME | TYPE_DATETIME_VARIATION_TIME
Summary
Constants | |
---|---|
int |
TYPE_CLASS_DATETIME
Class for dates and times. |
int |
TYPE_CLASS_NUMBER
Class for numeric text. |
int |
TYPE_CLASS_PHONE
Class for a phone number. |
int |
TYPE_CLASS_TEXT
Class for normal text. |
int |
TYPE_DATETIME_VARIATION_DATE
Default variation of |
int |
TYPE_DATETIME_VARIATION_NORMAL
Default variation of |
int |
TYPE_DATETIME_VARIATION_TIME
Default variation of |
int |
TYPE_MASK_CLASS
Mask of bits that determine the overall class of text being given. |
int |
TYPE_MASK_FLAGS
Mask of bits that provide addition bit flags of options. |
int |
TYPE_MASK_VARIATION
Mask of bits that determine the variation of the base content class. |
int |
TYPE_NULL
Special content type for when no explicit type has been specified. |
int |
TYPE_NUMBER_FLAG_DECIMAL
Flag of |
int |
TYPE_NUMBER_FLAG_SIGNED
Flag of |
int |
TYPE_NUMBER_VARIATION_NORMAL
Default variation of |
int |
TYPE_NUMBER_VARIATION_PASSWORD
Variation of |
int |
TYPE_TEXT_FLAG_AUTO_COMPLETE
Flag for |
int |
TYPE_TEXT_FLAG_AUTO_CORRECT
Flag for |
int |
TYPE_TEXT_FLAG_CAP_CHARACTERS
Flag for |
int |
TYPE_TEXT_FLAG_CAP_SENTENCES
Flag for |
int |
TYPE_TEXT_FLAG_CAP_WORDS
Flag for |
int |
TYPE_TEXT_FLAG_ENABLE_TEXT_CONVERSION_SUGGESTIONS
Flag for |
int |
TYPE_TEXT_FLAG_IME_MULTI_LINE
Flag for |
int |
TYPE_TEXT_FLAG_MULTI_LINE
Flag for |
int |
TYPE_TEXT_FLAG_NO_SUGGESTIONS
Flag for |
int |
TYPE_TEXT_VARIATION_EMAIL_ADDRESS
Variation of |
int |
TYPE_TEXT_VARIATION_EMAIL_SUBJECT
Variation of |
int |
TYPE_TEXT_VARIATION_FILTER
Variation of |
int |
TYPE_TEXT_VARIATION_LONG_MESSAGE
Variation of |
int |
TYPE_TEXT_VARIATION_NORMAL
Default variation of |
int |
TYPE_TEXT_VARIATION_PASSWORD
Variation of |
int |
TYPE_TEXT_VARIATION_PERSON_NAME
Variation of |
int |
TYPE_TEXT_VARIATION_PHONETIC
Variation of |
int |
TYPE_TEXT_VARIATION_POSTAL_ADDRESS
Variation of |
int |
TYPE_TEXT_VARIATION_SHORT_MESSAGE
Variation of |
int |
TYPE_TEXT_VARIATION_URI
Variation of |
int |
TYPE_TEXT_VARIATION_VISIBLE_PASSWORD
Variation of |
int |
TYPE_TEXT_VARIATION_WEB_EDIT_TEXT
Variation of |
int |
TYPE_TEXT_VARIATION_WEB_EMAIL_ADDRESS
Variation of |
int |
TYPE_TEXT_VARIATION_WEB_PASSWORD
Variation of |
Constants
TYPE_CLASS_DATETIME
public static final int TYPE_CLASS_DATETIME
Class for dates and times. It supports the
following variations:
TYPE_DATETIME_VARIATION_NORMAL
TYPE_DATETIME_VARIATION_DATE
, and
TYPE_DATETIME_VARIATION_TIME
.
Constant Value: 4 (0x00000004)
TYPE_CLASS_NUMBER
public static final int TYPE_CLASS_NUMBER
Class for numeric text. This class supports the following flags:
TYPE_NUMBER_FLAG_SIGNED
and
TYPE_NUMBER_FLAG_DECIMAL
. It also supports the following
variations: TYPE_NUMBER_VARIATION_NORMAL
and
TYPE_NUMBER_VARIATION_PASSWORD
.
IME authors: If you do not recognize the variation, normal should be assumed.
Constant Value: 2 (0x00000002)
TYPE_CLASS_PHONE
public static final int TYPE_CLASS_PHONE
Class for a phone number. This class currently supports no variations or flags.
Constant Value: 3 (0x00000003)
TYPE_CLASS_TEXT
public static final int TYPE_CLASS_TEXT
Class for normal text. This class supports the following flags (only
one of which should be set):
TYPE_TEXT_FLAG_CAP_CHARACTERS
,
TYPE_TEXT_FLAG_CAP_WORDS
, and.
TYPE_TEXT_FLAG_CAP_SENTENCES
. It also supports the
following variations:
TYPE_TEXT_VARIATION_NORMAL
, and
TYPE_TEXT_VARIATION_URI
. If you do not recognize the
variation, normal should be assumed.
Constant Value: 1 (0x00000001)
TYPE_DATETIME_VARIATION_DATE
public static final int TYPE_DATETIME_VARIATION_DATE
Default variation of TYPE_CLASS_DATETIME
: allows entering
only a date.
Constant Value: 16 (0x00000010)
TYPE_DATETIME_VARIATION_NORMAL
public static final int TYPE_DATETIME_VARIATION_NORMAL
Default variation of TYPE_CLASS_DATETIME
: allows entering
both a date and time.
Constant Value: 0 (0x00000000)
TYPE_DATETIME_VARIATION_TIME
public static final int TYPE_DATETIME_VARIATION_TIME
Default variation of TYPE_CLASS_DATETIME
: allows entering
only a time.
Constant Value: 32 (0x00000020)
TYPE_MASK_CLASS
public static final int TYPE_MASK_CLASS
Mask of bits that determine the overall class
of text being given. Currently supported classes are:
TYPE_CLASS_TEXT
, TYPE_CLASS_NUMBER
,
TYPE_CLASS_PHONE
, TYPE_CLASS_DATETIME
.
IME authors: If the class is not one you
understand, assume TYPE_CLASS_TEXT
with NO variation
or flags.
Constant Value: 15 (0x0000000f)
TYPE_MASK_FLAGS
public static final int TYPE_MASK_FLAGS
Mask of bits that provide addition bit flags of options.
Constant Value: 16773120 (0x00fff000)
TYPE_MASK_VARIATION
public static final int TYPE_MASK_VARIATION
Mask of bits that determine the variation of the base content class.
Constant Value: 4080 (0x00000ff0)
TYPE_NULL
public static final int TYPE_NULL
Special content type for when no explicit type has been specified. This should be interpreted to mean that the target input connection is not rich, it can not process and show things like candidate text nor retrieve the current text, so the input method will need to run in a limited "generate key events" mode, if it supports it. Note that some input methods may not support it, for example a voice-based input method will likely not be able to generate key events even if this flag is set.
Constant Value: 0 (0x00000000)
TYPE_NUMBER_FLAG_DECIMAL
public static final int TYPE_NUMBER_FLAG_DECIMAL
Flag of TYPE_CLASS_NUMBER
: the number is decimal, allowing
a decimal point to provide fractional values.
Constant Value: 8192 (0x00002000)
TYPE_NUMBER_FLAG_SIGNED
public static final int TYPE_NUMBER_FLAG_SIGNED
Flag of TYPE_CLASS_NUMBER
: the number is signed, allowing
a positive or negative sign at the start.
Constant Value: 4096 (0x00001000)
TYPE_NUMBER_VARIATION_NORMAL
public static final int TYPE_NUMBER_VARIATION_NORMAL
Default variation of TYPE_CLASS_NUMBER
: plain normal
numeric text. This was added in
Build.VERSION_CODES.HONEYCOMB
. An IME must target
this API version or later to see this input type; if it doesn't, a request
for this type will be dropped when passed through
EditorInfo.makeCompatible(int)
.
Constant Value: 0 (0x00000000)
TYPE_NUMBER_VARIATION_PASSWORD
public static final int TYPE_NUMBER_VARIATION_PASSWORD
Variation of TYPE_CLASS_NUMBER
: entering a numeric password.
This was added in Build.VERSION_CODES.HONEYCOMB
. An
IME must target this API version or later to see this input type; if it
doesn't, a request for this type will be dropped when passed
through EditorInfo.makeCompatible(int)
.
Constant Value: 16 (0x00000010)
TYPE_TEXT_FLAG_AUTO_COMPLETE
public static final int TYPE_TEXT_FLAG_AUTO_COMPLETE
Flag for TYPE_CLASS_TEXT
: the text editor (which means
the application) is performing auto-completion of the text being entered
based on its own semantics, which it will present to the user as they type.
This generally means that the input method should not be showing
candidates itself, but can expect the editor to supply its own
completions/candidates from
InputMethodSession.displayCompletions()
as a result of the editor calling
InputMethodManager.displayCompletions()
.
Note the contrast with TYPE_TEXT_FLAG_AUTO_CORRECT
and
TYPE_TEXT_FLAG_NO_SUGGESTIONS
:
TYPE_TEXT_FLAG_AUTO_COMPLETE
means the editor should show an
interface for displaying suggestions, but instead of supplying its own
it will rely on the Editor to pass completions/corrections.
Constant Value: 65536 (0x00010000)
TYPE_TEXT_FLAG_AUTO_CORRECT
public static final int TYPE_TEXT_FLAG_AUTO_CORRECT
Flag for TYPE_CLASS_TEXT
: the user is entering free-form
text that should have auto-correction applied to it. Without this flag,
the IME will not try to correct typos. You should always set this flag
unless you really expect users to type non-words in this field, for
example to choose a name for a character in a game.
Contrast this with TYPE_TEXT_FLAG_AUTO_COMPLETE
and
TYPE_TEXT_FLAG_NO_SUGGESTIONS
:
TYPE_TEXT_FLAG_AUTO_CORRECT
means that the IME will try to
auto-correct typos as the user is typing, but does not define whether
the IME offers an interface to show suggestions.
Constant Value: 32768 (0x00008000)
TYPE_TEXT_FLAG_CAP_CHARACTERS
public static final int TYPE_TEXT_FLAG_CAP_CHARACTERS
Flag for TYPE_CLASS_TEXT
: capitalize all characters. Overrides
TYPE_TEXT_FLAG_CAP_WORDS
and
TYPE_TEXT_FLAG_CAP_SENTENCES
. This value is explicitly defined
to be the same as TextUtils#CAP_MODE_CHARACTERS
. Of course,
this only affects languages where there are upper-case and lower-case letters.
Constant Value: 4096 (0x00001000)
TYPE_TEXT_FLAG_CAP_SENTENCES
public static final int TYPE_TEXT_FLAG_CAP_SENTENCES
Flag for TYPE_CLASS_TEXT
: capitalize the first character of
each sentence. This value is explicitly defined
to be the same as TextUtils#CAP_MODE_SENTENCES
. For example
in English it means to capitalize after a period and a space (note that other
languages may have different characters for period, or not use spaces,
or use different grammatical rules). Of course,
this only affects languages where there are upper-case and lower-case letters.
Constant Value: 16384 (0x00004000)
TYPE_TEXT_FLAG_CAP_WORDS
public static final int TYPE_TEXT_FLAG_CAP_WORDS
Flag for TYPE_CLASS_TEXT
: capitalize the first character of
every word. Overrides TYPE_TEXT_FLAG_CAP_SENTENCES
. This
value is explicitly defined
to be the same as TextUtils#CAP_MODE_WORDS
. Of course,
this only affects languages where there are upper-case and lower-case letters.
Constant Value: 8192 (0x00002000)
TYPE_TEXT_FLAG_ENABLE_TEXT_CONVERSION_SUGGESTIONS
public static final int TYPE_TEXT_FLAG_ENABLE_TEXT_CONVERSION_SUGGESTIONS
Flag for TYPE_CLASS_TEXT
: Let the IME know the text conversion suggestions are
required by the application. Text conversion suggestion is for the transliteration languages
which has pronunciation characters and target characters. When the user is typing the
pronunciation charactes, the IME could provide the possible target characters to the user.
When this flag is set, the IME should insert the text conversion suggestions through
Builder#setTextConversionSuggestions(List)
and
the TextAttribute
with initialized with the text conversion suggestions is provided
by the IME to the application. To receive the additional information, the application needs
to implement InputConnection#setComposingText(CharSequence, int, TextAttribute)
,
InputConnection#setComposingRegion(int, int, TextAttribute)
, and
InputConnection#commitText(CharSequence, int, TextAttribute)
.
Constant Value: 1048576 (0x00100000)
TYPE_TEXT_FLAG_IME_MULTI_LINE
public static final int TYPE_TEXT_FLAG_IME_MULTI_LINE
Flag for TYPE_CLASS_TEXT
: the regular text view associated
with this should not be multi-line, but when a fullscreen input method
is providing text it should use multiple lines if it can.
Constant Value: 262144 (0x00040000)
TYPE_TEXT_FLAG_MULTI_LINE
public static final int TYPE_TEXT_FLAG_MULTI_LINE
Flag for TYPE_CLASS_TEXT
: multiple lines of text can be
entered into the field. If this flag is not set, the text field
will be constrained to a single line. The IME may also choose not to
display an enter key when this flag is not set, as there should be no
need to create new lines.
Constant Value: 131072 (0x00020000)
TYPE_TEXT_FLAG_NO_SUGGESTIONS
public static final int TYPE_TEXT_FLAG_NO_SUGGESTIONS
Flag for TYPE_CLASS_TEXT
: the input method does not need to
display any dictionary-based candidates. This is useful for text views that
do not contain words from the language and do not benefit from any
dictionary-based completions or corrections. It overrides the
TYPE_TEXT_FLAG_AUTO_CORRECT
value when set.
Please avoid using this unless you are certain this is what you want.
Many input methods need suggestions to work well, for example the ones
based on gesture typing. Consider clearing
TYPE_TEXT_FLAG_AUTO_CORRECT
instead if you just do not
want the IME to correct typos.
Note the contrast with TYPE_TEXT_FLAG_AUTO_CORRECT
and
TYPE_TEXT_FLAG_AUTO_COMPLETE
:
TYPE_TEXT_FLAG_NO_SUGGESTIONS
means the IME does not need to
show an interface to display suggestions. Most IMEs will also take this to
mean they do not need to try to auto-correct what the user is typing.
Constant Value: 524288 (0x00080000)
TYPE_TEXT_VARIATION_EMAIL_ADDRESS
public static final int TYPE_TEXT_VARIATION_EMAIL_ADDRESS
Variation of TYPE_CLASS_TEXT
: entering an e-mail address.
Constant Value: 32 (0x00000020)
TYPE_TEXT_VARIATION_EMAIL_SUBJECT
public static final int TYPE_TEXT_VARIATION_EMAIL_SUBJECT
Variation of TYPE_CLASS_TEXT
: entering the subject line of
an e-mail.
Constant Value: 48 (0x00000030)
TYPE_TEXT_VARIATION_FILTER
public static final int TYPE_TEXT_VARIATION_FILTER
Variation of TYPE_CLASS_TEXT
: entering text to filter contents
of a list etc.
Constant Value: 176 (0x000000b0)
TYPE_TEXT_VARIATION_LONG_MESSAGE
public static final int TYPE_TEXT_VARIATION_LONG_MESSAGE
Variation of TYPE_CLASS_TEXT
: entering the content of a long, possibly
formal message such as the body of an e-mail.
Constant Value: 80 (0x00000050)
TYPE_TEXT_VARIATION_NORMAL
public static final int TYPE_TEXT_VARIATION_NORMAL
Default variation of TYPE_CLASS_TEXT
: plain old normal text.
Constant Value: 0 (0x00000000)
TYPE_TEXT_VARIATION_PASSWORD
public static final int TYPE_TEXT_VARIATION_PASSWORD
Variation of TYPE_CLASS_TEXT
: entering a password.
Constant Value: 128 (0x00000080)
TYPE_TEXT_VARIATION_PERSON_NAME
public static final int TYPE_TEXT_VARIATION_PERSON_NAME
Variation of TYPE_CLASS_TEXT
: entering the name of a person.
Constant Value: 96 (0x00000060)
TYPE_TEXT_VARIATION_PHONETIC
public static final int TYPE_TEXT_VARIATION_PHONETIC
Variation of TYPE_CLASS_TEXT
: entering text for phonetic
pronunciation, such as a phonetic name field in contacts. This is mostly
useful for languages where one spelling may have several phonetic
readings, like Japanese.
Constant Value: 192 (0x000000c0)
TYPE_TEXT_VARIATION_POSTAL_ADDRESS
public static final int TYPE_TEXT_VARIATION_POSTAL_ADDRESS
Variation of TYPE_CLASS_TEXT
: entering a postal mailing address.
Constant Value: 112 (0x00000070)
TYPE_TEXT_VARIATION_SHORT_MESSAGE
public static final int TYPE_TEXT_VARIATION_SHORT_MESSAGE
Variation of TYPE_CLASS_TEXT
: entering a short, possibly informal
message such as an instant message or a text message.
Constant Value: 64 (0x00000040)
TYPE_TEXT_VARIATION_URI
public static final int TYPE_TEXT_VARIATION_URI
Variation of TYPE_CLASS_TEXT
: entering a URI.
Constant Value: 16 (0x00000010)
TYPE_TEXT_VARIATION_VISIBLE_PASSWORD
public static final int TYPE_TEXT_VARIATION_VISIBLE_PASSWORD
Variation of TYPE_CLASS_TEXT
: entering a password, which should
be visible to the user.
Constant Value: 144 (0x00000090)
TYPE_TEXT_VARIATION_WEB_EDIT_TEXT
public static final int TYPE_TEXT_VARIATION_WEB_EDIT_TEXT
Variation of TYPE_CLASS_TEXT
: entering text inside of a web form.
Constant Value: 160 (0x000000a0)
TYPE_TEXT_VARIATION_WEB_EMAIL_ADDRESS
public static final int TYPE_TEXT_VARIATION_WEB_EMAIL_ADDRESS
Variation of TYPE_CLASS_TEXT
: entering e-mail address inside
of a web form. This was added in
Build.VERSION_CODES.HONEYCOMB
. An IME must target
this API version or later to see this input type; if it doesn't, a request
for this type will be seen as TYPE_TEXT_VARIATION_EMAIL_ADDRESS
when passed through EditorInfo.makeCompatible(int)
.
Constant Value: 208 (0x000000d0)
TYPE_TEXT_VARIATION_WEB_PASSWORD
public static final int TYPE_TEXT_VARIATION_WEB_PASSWORD
Variation of TYPE_CLASS_TEXT
: entering password inside
of a web form. This was added in
Build.VERSION_CODES.HONEYCOMB
. An IME must target
this API version or later to see this input type; if it doesn't, a request
for this type will be seen as TYPE_TEXT_VARIATION_PASSWORD
when passed through EditorInfo.makeCompatible(int)
.
Constant Value: 224 (0x000000e0)