Package icyllis.modernui.text.method
Class DigitsInputFilter
java.lang.Object
icyllis.modernui.text.method.NumberInputFilter
icyllis.modernui.text.method.DigitsInputFilter
- All Implemented Interfaces:
InputFilter
Input filter for digits-only text.
-
Nested Class Summary
Nested classes/interfaces inherited from interface icyllis.modernui.text.InputFilter
InputFilter.LengthFilter
-
Method Summary
Modifier and TypeMethodDescriptionfilter
(CharSequence source, int start, int end, Spanned dest, int dstart, int dend) This method is called when the buffer is going to replace the rangedstart … dend
ofdest
with the new text from the rangestart … end
ofsource
.protected char[]
You can say which characters you can accept.static DigitsInputFilter
getInstance
(String accepted) Returns a DigitsKeyListener that accepts only the characters that appear in the specified String.static DigitsInputFilter
getInstance
(Locale locale) Returns a DigitsKeyListener that accepts the locale-appropriate digits.static DigitsInputFilter
getInstance
(Locale locale, boolean sign, boolean decimal) Returns a DigitsKeyListener that accepts the locale-appropriate digits, plus the locale-appropriate plus or minus sign (only at the beginning) and/or the locale-appropriate decimal separator (only one per field) if specified.static DigitsInputFilter
getInstance
(Locale locale, DigitsInputFilter listener) Returns a DigitsKeyListener based on the settings of an existing instance, with the locale modified.Methods inherited from class icyllis.modernui.text.method.NumberInputFilter
not
-
Method Details
-
getAcceptedChars
@Nonnull protected char[] getAcceptedChars()Description copied from class:NumberInputFilter
You can say which characters you can accept.- Specified by:
getAcceptedChars
in classNumberInputFilter
-
getInstance
Returns a DigitsKeyListener that accepts the locale-appropriate digits. -
getInstance
@Nonnull public static DigitsInputFilter getInstance(@Nullable Locale locale, boolean sign, boolean decimal) Returns a DigitsKeyListener that accepts the locale-appropriate digits, plus the locale-appropriate plus or minus sign (only at the beginning) and/or the locale-appropriate decimal separator (only one per field) if specified. -
getInstance
Returns a DigitsKeyListener that accepts only the characters that appear in the specified String. Note that not all characters may be available on every keyboard. -
getInstance
@Nonnull public static DigitsInputFilter getInstance(@Nullable Locale locale, @Nonnull DigitsInputFilter listener) Returns a DigitsKeyListener based on the settings of an existing instance, with the locale modified. -
filter
public CharSequence filter(@Nonnull CharSequence source, int start, int end, @Nonnull Spanned dest, int dstart, int dend) Description copied from interface:InputFilter
This method is called when the buffer is going to replace the rangedstart … dend
ofdest
with the new text from the rangestart … end
ofsource
. Return the CharSequence that you would like to have placed there instead, including an empty string if appropriate, ornull
to accept the original replacement. Be careful to not to reject 0-length replacements, as this is what happens when you delete text. Also beware that you should not attempt to make any changes todest
from this method; you may only examine it for context.Note: If source is an instance of
Spanned
orSpannable
, the span objects in the source should be copied into the filtered result (i.e. the non-null return value).TextUtils.copySpansFrom(icyllis.modernui.text.Spanned, int, int, java.lang.Class<?>, icyllis.modernui.text.Spannable, int)
can be used for convenience if the span boundary indices would be remaining identical relative to the source.- Specified by:
filter
in interfaceInputFilter
- Overrides:
filter
in classNumberInputFilter
-