public static class InputMethodSubtype.InputMethodSubtypeBuilder extends Object
InputMethodManager.setAdditionalInputMethodSubtypes(java.lang.String, android.view.inputmethod.InputMethodSubtype[])
.
The developer needs to be aware of what each parameter means.Constructor and Description |
---|
InputMethodSubtypeBuilder() |
Modifier and Type | Method and Description |
---|---|
InputMethodSubtype |
build() |
InputMethodSubtype.InputMethodSubtypeBuilder |
setIsAsciiCapable(boolean isAsciiCapable) |
InputMethodSubtype.InputMethodSubtypeBuilder |
setIsAuxiliary(boolean isAuxiliary) |
InputMethodSubtype.InputMethodSubtypeBuilder |
setLanguageTag(String languageTag) |
InputMethodSubtype.InputMethodSubtypeBuilder |
setOverridesImplicitlyEnabledSubtype(boolean overridesImplicitlyEnabledSubtype) |
InputMethodSubtype.InputMethodSubtypeBuilder |
setSubtypeExtraValue(String subtypeExtraValue) |
InputMethodSubtype.InputMethodSubtypeBuilder |
setSubtypeIconResId(int subtypeIconResId) |
InputMethodSubtype.InputMethodSubtypeBuilder |
setSubtypeId(int subtypeId) |
InputMethodSubtype.InputMethodSubtypeBuilder |
setSubtypeLocale(String subtypeLocale) |
InputMethodSubtype.InputMethodSubtypeBuilder |
setSubtypeMode(String subtypeMode) |
InputMethodSubtype.InputMethodSubtypeBuilder |
setSubtypeNameResId(int subtypeNameResId) |
public InputMethodSubtype.InputMethodSubtypeBuilder setIsAuxiliary(boolean isAuxiliary)
isAuxiliary
- should true when this subtype is auxiliary, false otherwise.
An auxiliary subtype has the following differences with a regular subtype:
- An auxiliary subtype cannot be chosen as the default IME in Settings.
- The framework will never switch to this subtype through
InputMethodManager.switchToLastInputMethod(android.os.IBinder)
.
Note that the subtype will still be available in the IME switcher.
The intent is to allow for IMEs to specify they are meant to be invoked temporarily
in a one-shot way, and to return to the previous IME once finished (e.g. voice input).public InputMethodSubtype.InputMethodSubtypeBuilder setOverridesImplicitlyEnabledSubtype(boolean overridesImplicitlyEnabledSubtype)
overridesImplicitlyEnabledSubtype
- should be true if this subtype should be
enabled by default if no other subtypes in the IME are enabled explicitly. Note that a
subtype with this parameter set will not be shown in the list of subtypes in each IME's
subtype enabler. A canonical use of this would be for an IME to supply an "automatic"
subtype that adapts to the current system language.public InputMethodSubtype.InputMethodSubtypeBuilder setIsAsciiCapable(boolean isAsciiCapable)
isAsciiCapable
- should be true if this subtype is ASCII capable. If the subtype
is ASCII capable, it should guarantee that the user can input ASCII characters with
this subtype. This is important because many password fields only allow
ASCII-characters.public InputMethodSubtype.InputMethodSubtypeBuilder setSubtypeIconResId(int subtypeIconResId)
subtypeIconResId
- is a resource ID of the subtype icon drawable.public InputMethodSubtype.InputMethodSubtypeBuilder setSubtypeNameResId(int subtypeNameResId)
subtypeNameResId
- is the resource ID of the subtype name string.
The string resource may have exactly one %s in it. If present,
the %s part will be replaced with the locale's display name by
the formatter. Please refer to InputMethodSubtype.getDisplayName(android.content.Context, java.lang.String, android.content.pm.ApplicationInfo)
for details.public InputMethodSubtype.InputMethodSubtypeBuilder setSubtypeId(int subtypeId)
subtypeId
- is the unique ID for this subtype. The input method framework keeps
track of enabled subtypes by ID. When the IME package gets upgraded, enabled IDs will
stay enabled even if other attributes are different. If the ID is unspecified or 0,
Arrays.hashCode(new Object[] {locale, mode, extraValue,
isAuxiliary, overridesImplicitlyEnabledSubtype, isAsciiCapable}) will be used instead.public InputMethodSubtype.InputMethodSubtypeBuilder setSubtypeLocale(String subtypeLocale)
subtypeLocale
- is the locale supported by this subtype.public InputMethodSubtype.InputMethodSubtypeBuilder setLanguageTag(String languageTag)
languageTag
- is the BCP-47 Language Tag supported by this subtype.public InputMethodSubtype.InputMethodSubtypeBuilder setSubtypeMode(String subtypeMode)
subtypeMode
- is the mode supported by this subtype.public InputMethodSubtype.InputMethodSubtypeBuilder setSubtypeExtraValue(String subtypeExtraValue)
subtypeExtraValue
- is the extra value of the subtype. This string is free-form,
but the API supplies tools to deal with a key-value comma-separated list; see
InputMethodSubtype.containsExtraValueKey(java.lang.String)
and InputMethodSubtype.getExtraValueOf(java.lang.String)
.public InputMethodSubtype build()