Establecer la gravedad del RelativeLayout afectará a todos los objetos colocados dentro de él. En este caso, es solo el botón. Puede usar cualquiera de las configuraciones de gravedad aquí, por supuesto (por ejemplo, centro_horizontal, superior, derecha, etc.).
Gracias. Sin embargo, si tuviera varios botones y solo quisiera uno centrado, ¿cómo lo haría? El primer código centraría todo dentro de la distribución relativa relativa. Además, ¿cómo podría centrar el botón en la parte superior de su fila?
Arcadia
Solo use el segundo ejemplo y solo agregue centerInParent al botón que desea centrar. También puede usar centerHorizontal y layout_alignParentTop para alinearlo en la parte superior y centrarlo horizontalmente. ¿Qué es exactamente lo que está tratando de lograr? Podría dar un mejor ejemplo.
Kevin Coppock
Apenas comienzo mis estudios de desarrollo de Android y trato de entender completamente cómo manipular las cosas para hacer lo que quiero. Básicamente quiero evitar alinear cosas con píxeles porque la imagen podría verse muy diferente en un tipo / resolución de pantalla diferente. Sin embargo, cuando usa el comando de gravedad, todo lo sigue. Intenté desactivar la gravedad para un botón usando ignoreGravity y no funcionó. Esto es muy complicado.
Arcadia
Sí, definitivamente puede ser. Hay muchas maneras de hacer un diseño en particular. La mejor manera es hacer un bosquejo en tu cabeza como lo desees, e ir desde allí. Este tutorial rápido también puede ser útil: developer.android.com/resources/tutorials/views/…
Kevin Coppock
Sí, en realidad estaba haciendo ese tutorial. Estoy revisando cada uno de los tutoriales y aprendiendo a manipularlos por completo, de lo contrario no tendré una idea de cómo cada uno es diferente.
Arcadia
25
Resumido
Agregando:
android:layout_centerInParent="true"
solo funciona en RelativeLayout, si uno de los siguientes atributos también está configurado para la vista:
Para centrar la alineación en una de las direcciones, use android: layout_centerHorizontal = "true" o android: layout_centerVertical = "true" en el diseño secundario
Eliminar cualquier alineación como android: layout_alignParentStart = "true" y agregar centerInParent funcionó para mí. Si el "alinear" permanece, el centerInParent no funciona
Respuestas:
Tratar
Exactamente así, funciona para mí:
fuente
Puede usar CENTER_IN_PARENT para el diseño relativo.
Agregue
android:layout_centerInParent="true"
al elemento que desea centrar en RelativeLayoutfuente
Arcadia, solo prueba el siguiente código. Hay varias formas de obtener el resultado que está buscando, esta es una de las formas más fáciles.
Establecer la gravedad del RelativeLayout afectará a todos los objetos colocados dentro de él. En este caso, es solo el botón. Puede usar cualquiera de las configuraciones de gravedad aquí, por supuesto (por ejemplo, centro_horizontal, superior, derecha, etc.).
También puede usar este código a continuación:
fuente
Resumido
Agregando:
solo funciona en RelativeLayout, si uno de los siguientes atributos también está configurado para la vista:
que alinea la vista secundaria a la vista primaria. El "centro" se basa en el eje de la alineación que ha elegido:
izquierda / derecha -> vertical
arriba / abajo -> horizontal
Establecer la gravedad del niño / contenido dentro de la vista:
está centrando al niño dentro de la vista padre en cualquier caso, si no hay un conjunto de alineación. Opcional puedes elegir:
Entonces hay:
que está centrando la vista dentro de su padre
Y finalmente puede agregar el siguiente atributo a la vista de los padres:
fuente
Utilice el atributo
android:centerInParent="true"
dentro de una vista, cuando desee centrar la vista en Diseño relativo.fuente
Es fácil, no lo alinees con nada
fuente
Para centrar la alineación en una de las direcciones, use android: layout_centerHorizontal = "true" o android: layout_centerVertical = "true" en el diseño secundario
fuente
Eliminar cualquier alineación como android: layout_alignParentStart = "true" y agregar centerInParent funcionó para mí. Si el "alinear" permanece, el centerInParent no funciona
fuente
Es muy fácil Prueba el siguiente código,
fuente
debe haberlo alineado a izquierda o derecha de la vista principal
no use ninguno de estos cuando use
android:centerInParent="true"
códigos: -android:layout_alignParentLeft="true"
android:layout_alignParentLeft="true"
android:layout_alignRight=""
etc.
fuente