+1
Hiển thị TextView kiểu số trong Android
chào mọi người. Mình muốn hiển thị dãy số dạng kiểu này **** **** **** 1234 Mình muốn ẩn những dãy số ban đầu và chỉ hiển thị 4 số cuối. Thì định dạng như thế nào trong code vậy? Mong mọi nguời giúp đỡ.
Thêm một bình luận
1 CÂU TRẢ LỜI
+2
Nếu bạn chỉ muốn format String thông thường thì có dùng các hàm cắt, cộng chuỗi trong java.
Còn nếu bạn muốn tự động chuyển sang dấu sao khi người dùng nhập số thì có thể dùng cách này :
Viết 1 class custom lại PasswordTransformationMethod
, số 9
trong hàm charAt
chính là số kí tự bạn muốn chuyển sang dấu *
.
public class MyTransformationMethod extends PasswordTransformationMethod {
@Override
public CharSequence getTransformation(CharSequence source, View view) {
return new CustomCharSequence(source);
}
private class CustomCharSequence implements CharSequence {
private CharSequence mSource;
CustomCharSequence(CharSequence source) {
mSource = source;
}
@Override
public char charAt(int index) {
return (index < 9) ? '*' : mSource.charAt(index);
}
@Override
public int length() {
return mSource.length();
}
@Override
public CharSequence subSequence(int start, int end) {
return mSource.subSequence(start, end);
}
}
}
Và trong code, chỉ cần set thuộc tính của editText như sau:
editText.setTransformationMethod(new MyTransformationMethod());
thank bạn nhiều
@ductuandt3 (y)