У меня есть пользовательский класс EditText
. В этом EditText
мне нужно узнать ширину ввода. В зависимости от inputType
из EditText
текст имеет разные значения ширины.EditText ширина скрытого текста
Например:
final String text = "azazaz";
setText(text);
inputType является пароль, так что пользователь видеть, что: ****** (40px для например)
нет inputType, так что пользователь видеть, что : azazaz (например, 60px)
Но в следующем коде будет установлено такое же значение textWidth
в обоих вариантах (ширина текста без inputType
)
final Paint p = new Paint();
p.setTextSize(getTextSize());
final float textWidth = p.measureText(text);
ВОПРОС: Как я могу найти реальное значение ширины текста с паролем inputType?
это может быть хорошим решением, но текст скрыт не «\ *» символов. Текст скрыт несимволическими точками. Я использую «\ *» в качестве знака этих точек. –
@ P.Ilyin Я отредактировал свой ответ для обнаружения символа паролей динамически – birdy
Вы можете сделать 'password = method.getTransformation (text, textView);' и устранить цикл и 'StringBuilder' –