Android EditText 自定義密碼樣式,密碼轉換為*等特殊字元
阿新 • • 發佈:2018-12-16
import android.text.method.PasswordTransformationMethod; import android.text.method.TransformationMethod;
//設定密碼轉換 editText.setTransformationMethod(new TransformationMethod() { @Override public CharSequence getTransformation(CharSequence source, View view) { return new PasswordCharSequence(source); } @Override public void onFocusChanged(View view, CharSequence sourceText, boolean focused, int direction, Rect previouslyFocusedRect) { } });
/** * 將密碼轉換成*顯示 * */ private class PasswordCharSequence implements CharSequence { private CharSequence mSource; public PasswordCharSequence(CharSequence source) { mSource = source; // Store char sequence } public char charAt(int index) { //這裡返回的char,就是密碼的樣式,注意,是char型別的 return '*'; } public int length() { return mSource.length(); } public CharSequence subSequence(int start, int end) { return mSource.subSequence(start, end); // Return default } }