Package icyllis.modernui.text.method

# Class PasswordTransformationMethod

java.lang.Object
icyllis.modernui.text.method.PasswordTransformationMethod

All Implemented Interfaces:
  `TransformationMethod`, `NoCopySpan`, `TextWatcher`

public class PasswordTransformationMethod extends Object implements TransformationMethod, TextWatcher

- ## Nested Class Summary

  ## Nested classes/interfaces inherited from interface icyllis.modernui.text.NoCopySpan

  `NoCopySpan.Concrete`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `void`
  `afterTextChanged(Editable s)`
  This method is called to notify you that, somewhere within `s`, the text has been changed.
  `void`
  `beforeTextChanged(CharSequence s, int start, int count, int after)`
  This method is called to notify you that, within `s`, the `count` characters beginning at `start` are about to be replaced by new text with length `after`.
  `static PasswordTransformationMethod`
  `getInstance()`
  `CharSequence`
  `getTransformation(CharSequence source, View view)`
  Returns a CharSequence that is a transformation of the source text -- for example, replacing each character with a dot in a password field.
  `void`
  `onFocusChanged(View view, CharSequence sourceText, boolean focused, int direction, Rect previouslyFocusedRect)`
  This method is called when the TextView that uses this TransformationMethod gains or loses focus.
  `void`
  `onTextChanged(CharSequence s, int start, int before, int count)`
  This method is called to notify you that, within `s`, the `count` characters beginning at `start` have just replaced old text that had length `before`.

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

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

- ## Method Details

  - ### getInstance

    public static PasswordTransformationMethod getInstance()

  - ### getTransformation

    @Nonnull public CharSequence getTransformation(@Nonnull CharSequence source, @Nonnull View view)
    Description copied from interface: `TransformationMethod`
    Returns a CharSequence that is a transformation of the source text -- for example, replacing each character with a dot in a password field. Beware that the returned text must be exactly the same length as the source text, and that if the source text is Editable, the returned text must mirror it dynamically instead of doing a one-time copy.
    Specified by:
      `getTransformation` in interface `TransformationMethod`

  - ### onFocusChanged

    public void onFocusChanged(@Nonnull View view, @Nonnull CharSequence sourceText, boolean focused, int direction, @Nullable Rect previouslyFocusedRect)
    Description copied from interface: `TransformationMethod`
    This method is called when the TextView that uses this TransformationMethod gains or loses focus.
    Specified by:
      `onFocusChanged` in interface `TransformationMethod`

  - ### beforeTextChanged

    public void beforeTextChanged(CharSequence s, int start, int count, int after)
    Description copied from interface: `TextWatcher`
    This method is called to notify you that, within `s`, the `count` characters beginning at `start` are about to be replaced by new text with length `after`. It is an error to attempt to make changes to `s` from this callback.
    Specified by:
      `beforeTextChanged` in interface `TextWatcher`

  - ### onTextChanged

    public void onTextChanged(CharSequence s, int start, int before, int count)
    Description copied from interface: `TextWatcher`
    This method is called to notify you that, within `s`, the `count` characters beginning at `start` have just replaced old text that had length `before`. It is an error to attempt to make changes to `s` from this callback.
    Specified by:
      `onTextChanged` in interface `TextWatcher`

  - ### afterTextChanged

    public void afterTextChanged(Editable s)
    Description copied from interface: `TextWatcher`
    This method is called to notify you that, somewhere within `s`, the text has been changed. It is legitimate to make further changes to `s` from this callback, but be careful not to get yourself into an infinite loop, because any changes you make will cause this method to be called again recursively. (You are not told where the change took place because other afterTextChanged() methods may already have made other changes and invalidated the offsets. But if you need to know here, you can use `Spannable.setSpan(java.lang.Object, int, int, int)` in `TextWatcher.onTextChanged(java.lang.CharSequence, int, int, int)` to mark your place and then look up from here where the span ended up.
    Specified by:
      `afterTextChanged` in interface `TextWatcher`