studio programacion herramientas fundamentos con avanzado aplicaciones android android-layout textview text-size

android - programacion - Obtenga el tamaño de un texto en TextView



manual de android en pdf (3)

Por alguna razón, la solución de Midverse Engineer no siempre me da resultados correctos (al menos en algunas versiones de Android). La solución de Sherif elKhatib funciona, pero tiene el efecto secundario de cambiar MeasuredWidth y Height. Esto podría llevar a un posicionamiento incorrecto de textView.

Mi solución:

width = textView.getPaint().measureText(text); metrics = textView.getPaint().getFontMetrics(); height = metrics.bottom - metrics.top;

Tengo un problema al colocar un textView en las coordenadas xey del centro especificado. En primer lugar, intenté configurar el texto en textView y mover la vista con el ancho y el alto de la vista desde este enlace .

Pero no funciona, y me gustaría probar algo más. Me gustaría saber si hay un método para obtener el tamaño que tomará un texto específico en mi textView. Quiero decir, sé el texto y el tamaño del texto, ¿cómo puedo obtener el ancho y la altura que tomará mi textView?

Algo así como el método (NSString)sizeWithFont; para aquellos que conocen iPhone dev.


Si su vista de texto se llama TV

TV.setText("bla"); TV.measure(0, 0); //must call measure! TV.getMeasuredHeight(); //get height TV.getMeasuredWidth(); //get width

Más sobre esto (actualizado): Cómo obtener el ancho / alto de una Vista


Rect bounds = new Rect(); textView.getPaint().getTextBounds(textView.getText().toString(), 0, textView.getText().length(), bounds);

bounds.width() le dará el ancho exacto del texto en la Vista de texto.