开发者社区 问答 正文

关于android EditText输密码时怎么把圆点改成*号

需要转换一个显示;

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-03-05 14:21:06 2371 分享 版权
1 条回答
写回答
取消 提交回答
  • 需要转换一个显示;

    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  
        }  
    }  
    2019-07-17 18:53:26
    赞同 展开评论