Package icyllis.modernui.text.method

# Class DigitsInputFilter

java.lang.Object
icyllis.modernui.text.method.NumberInputFilter
icyllis.modernui.text.method.DigitsInputFilter

All Implemented Interfaces:
  `InputFilter`

public class DigitsInputFilter extends NumberInputFilter
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 Type
  Method
  Description
  `CharSequence`
  `filter(CharSequence source, int start, int end, Spanned dest, int dstart, int dend)`
  This method is called when the buffer is going to replace the range `dstart … dend` of `dest` with the new text from the range `start … end` of `source`.
  `protected char[]`
  `getAcceptedChars()`
  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`

  ### Methods inherited from class java.lang.Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- ## Method Details

  - ### getAcceptedChars

    @Nonnull protected char[] getAcceptedChars()
    Description copied from class: `NumberInputFilter`
    You can say which characters you can accept.
    Specified by:
      `getAcceptedChars` in class `NumberInputFilter`

  - ### getInstance

    @Nonnull public static DigitsInputFilter getInstance(@Nullable Locale locale)
    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

    @Nonnull public static DigitsInputFilter getInstance(@Nonnull String accepted)
    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 range `dstart … dend` of `dest` with the new text from the range `start … end` of `source`. Return the CharSequence that you would like to have placed there instead, including an empty string if appropriate, or `null` 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 to `dest` from this method; you may only examine it for context.

    Note: If source is an instance of `Spanned` or `Spannable`, 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 interface `InputFilter`
    Overrides:
      `filter` in class `NumberInputFilter`