La guía o código que encontrarás en este post es la resolución más sencilla y válida que hallamos a esta inquietud o dilema.
Solución:
Rect bounds = new Rect();
Paint textPaint = textView.getPaint();
textPaint.getTextBounds(text,0,text.length(),bounds);
int height = bounds.height();
int width = bounds.width();
o
textView.setText("bla");
textView.measure(0, 0);
textView.getMeasuredWidth();
textView.getMeasuredHeight();
Por favor, intente esto:
public void onCreate(Bundle savedInstanceState)
super.onCreate(savedInstanceState);
TextView edit = (TextView) findViewById(R.id.edit);
edit.setTextSize(20);
edit.setText("Hello, world");
edit.measure(0, 0);
int width = edit.getMeasuredWidth();
Log.w("width", width.toString());
Antes de obtener el ancho, debe medir la vista/etiqueta/edición de texto. Por favor, avíseme si esto no funciona.
TextView txt = new TextView(mContext);
txt.setText("Some Text)";
int height = txt.getLineCount() * txt.getLineHeight();
int width = txt.getWidth();
¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)