Textview cortar una carta en android
Esto es una captura de pantalla de mi androide. El texto es "asd". Sin embargo, la "d" está ligeramente cortada. Aquí está la opinión relevante:
<TextView android:id="@+id/stuff" android:padding="2dp" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentLeft="true" android:layout_below="@+id/other_stuff" android:layout_marginTop="33dp" android:textAppearance="?android:attr/textAppearanceLarge" android:textStyle="italic" />
Cualquier idea de lo que está causando esto?
Ninguna de las sugerencias mencionadas funciona, terminó con una solución hacky que está agregando un espacio en blanco después del último carácter en cursiva
Lo arreglé con la configuración de la anchura de TextView a fill_parent en lugar de wrap_content …
Ok esto es bastante extraño, pero he cambiado de android:maxLines="1"
a android:singleLine="true"
y ahora el texto no se está cortando.
Podría ser el relleno, intente establecer que a 0dp
También hay algo más en el diseño?
Puedes usar .
android:layout_width="fill_parent"
En lugar de
android:layout_width="wrap_content"
Sospecho que el problema no se producirá si no está utilizando texto en cursiva. Lo probaría primero, y si el uso de texto no cursivo lo hace correctamente, entonces se ve como un problema de renderizado, que necesitaría trabajar con un relleno adicional en el TextView para permitir el espacio para las letras en cursiva.
El problema aquí es, la propiedad cursiva. Usted tiene que fijar un ancho particular para su textview.
Siempre se puede crear personalizado TextView que se utiliza por ejemplo esta fuente (porque de hecho este es un problema con el tipo de cursiva ):
Typeface tf = Typeface.createFromAsset(context.getAssets(), "fonts/Roboto-LightItalic.ttf"); setTypeface(tf);
Más detalles aquí .
Esta es mi solución: Formato textview y measure. Después de que el conjunto de ancho de textview con 1 píxel añadir a la anchura medida.
TextView textView = new TextView(this); textView.setText("Text blah blah"); textView.setTypeface(typeface, Typeface.BOLD_ITALIC) textView.measure(MeasureSpec.UNSPECIFIED, MeasureSpec.UNSPECIFIED); textView.setLayoutParams(new LayoutParams(textView.getMeasuredWidth() + 1, LayoutParams.WRAP_CONTENT));
Trabajando para mí. Espero que estos ayudan.