Android establece la gravedad de un TextView mediante programación
Puedo usar android:gravity="bottom|center_horizontal"
en xml en un textview para obtener mis resultados deseados, pero necesito hacer esto mediante programación. Mi texto está dentro de un tablerow
si eso importa en un relativelayout
.
Yo he tratado:
- Cómo agregar una ruptura de línea en un Android TextView?
- se llama onmeasure y no sé por qué - android
- Establecer dinámicamente vínculos a texto en strings.xml
- Etiqueta dentro de Polyline Google Maps V3
- Mostrar el número total como texto para múltiples pines con un pin en la misma ubicación en el mapa en android
LayoutParams layoutParams = new TableRow.LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT, Gravity.BOTTOM | Gravity.CENTER_HORIZONTAL); labelTV.setLayoutParams(layoutParams);
Pero si lo entiendo correctamente, ¿eso se aplicaría al tablerow
, no a la vista de texto?
- Efecto de sombra para un texto en Android?
- Hacer texto flotante-derecha en Android
- Cómo escribir texto de derecha a izquierda (Texto árabe) en Android?
- ¿Cómo crear un efecto de marquesina para un texto de menor longitud que no exceda el tamaño de la pantalla en Android?
- Almacenar un texto grande y estructurado en la aplicación Android
- ¿Cómo restaurar la posición de desplazamiento de texto tras la rotación de la pantalla?
- Texto transparente de Android
- Zoom textview con imagen y texto (contenido html) en android
labelTV.setGravity(Gravity.CENTER | Gravity.BOTTOM);
También, ¿estás hablando de gravedad o de layout_gravity? Este último no funcionará en un RelativeLayout .
Esto centrará el texto en una vista de texto:
TextView ta = (TextView) findViewById(R.layout.text_view); LayoutParams lp = new LayoutParams(); lp.gravity = Gravity.CENTER_HORIZONTAL; ta.setLayoutParams(lp);
Podemos establecer la gravedad del diseño en cualquier vista como abajo way-
myView = findViewById(R.id.myView); myView.setGravity(Gravity.CENTER_VERTICAL|Gravity.RIGHT); or myView.setGravity(Gravity.BOTTOM);
Esto es igual a debajo del código xml
<... android:gravity="center_vertical|right" ... .../>
Debe utilizar textView.setGravity(Gravity.CENTER_HORIZONTAL);
.
Recuerde que usar
LinearLayout.LayoutParams layoutParams =new LinearLayout.LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.WRAP_CONTENT); layoutParams2.gravity = Gravity.BOTTOM | Gravity.CENTER_HORIZONTAL;
No funciona. Esto establecerá la gravedad para el widget y no para su texto.
Utilice este código
TextView textView = new TextView(YourActivity.this); textView.setGravity(Gravity.CENTER | Gravity.TOP); textView.setText("some text");
textView.setGravity(Gravity.CENTER | Gravity.BOTTOM);
Esto establecerá la gravedad de su texto.