48

パスワードテキストを dot(.) から asterisk(*) に変更する方法はありますか?

パスワードは edittext に入力しています。

<EditText
        android:id="@+id/passWord1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:gravity="center"
        android:inputType="number"
        android:password="true"/>
4

8 に答える 8

19
<EditText
        android:id="@+id/passWord1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:gravity="center"
        android:inputType="textPassword"//here is the change. check it once in your xml
        android:password="true"/>

Eclipse では、カーソルを に移動してCtrl+をクリックするとヒントが表示されます。次に、オプションのリストを表示できます。そこで選択できますSpaceandroid:inputTypetextPassword

*の代わりに見たい場合は.、これをチェックしてくださいAndroid: Asterisk Password Field

于 2012-12-27T09:04:21.460 に答える
9

Ram kiran によって投稿されたリンクの助けを借りて回答を得ました

text.setTransformationMethod(new AsteriskPasswordTransformationMethod());


public class AsteriskPasswordTransformationMethod extends PasswordTransformationMethod {
@Override
public CharSequence getTransformation(CharSequence source, View view) {
    return new PasswordCharSequence(source);
}

private class PasswordCharSequence implements CharSequence {
    private CharSequence mSource;
    public PasswordCharSequence(CharSequence source) {
        mSource = source; // Store char sequence
    }
    public char charAt(int index) {
        return '*'; // This is the important part
    }
    public int length() {
        return mSource.length(); // Return default
    }
    public CharSequence subSequence(int start, int end) {
        return mSource.subSequence(start, end); // Return default
    }
}
};
于 2016-08-17T05:55:00.743 に答える
2
EditText.setTransformationMethod(new PasswordTransformationMethod());
于 2017-11-28T06:22:03.617 に答える
0

これを試して

android:inputType="textPassword"       
于 2012-12-27T09:28:20.023 に答える
0

android:inputType にはパスワードの種類があります。

于 2012-12-27T09:03:17.850 に答える