Estoy tratando de centrar un botón en el diseño relativo, ¿es esto posible? Probé las funciones de Gravedad y Orientación pero no hacen nada.¿Puedes centrar un botón en RelativeLayout?
Respuesta
Trate
android:layout_centerHorizontal="true"
exactamente como este, a mí me funciona:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="#ff0000">
<Button
android:id="@+id/btn_mybutton"
android:layout_height="wrap_content"
android:layout_width="124dip"
android:layout_marginTop="5dip"
android:layout_centerHorizontal="true"/>
</RelativeLayout>
Usted puede utilizar CENTER_IN_PARENT para la disposición relativa.
Añadir android:layout_centerInParent="true"
al elemento que desea centrar en el RelativeLayout
¿Dónde lo pongo? – Arcadia
@josnidhin: esta es la respuesta correcta. – Ashwin
Correcto;) Gracias :) – androniennn
Arcadia, utilice la herramienta de código de abajo. Hay varias maneras de obtener el resultado que está buscando, esta es una de las formas más fáciles.
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/relative_layout"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:gravity="center">
<Button
android:id="@+id/the_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Centered Button"/>
</RelativeLayout>
El ajuste de la gravedad relativa de Relative afectará a todos los objetos colocados en su interior. En este caso, es solo el botón. Puedes usar cualquiera de las configuraciones de gravedad aquí, por supuesto (por ejemplo, center_horizontal, arriba, derecha, y así sucesivamente).
También puede utilizar este código de abajo:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/relative_layout"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<Button
android:id="@+id/the_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Centered Button"
android:layout_centerInParent="true"/>
</RelativeLayout>
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 versión relativa principal. Además, ¿cómo podría centrar el botón en la parte superior de su fila? – Arcadia
Simplemente use el segundo ejemplo, y solo agregue centerInParent al botón que desee centrado. También puede usar centerHorizontal y layout_alignParentTop para alinearlo en la parte superior y centrarlo horizontalmente. ¿Qué es exactamente lo que estás tratando de lograr, podría dar un mejor ejemplo. – kcoppock
Apenas comienzo mis estudios de desarrollo de Android y trato de comprender completamente cómo manipular cosas para hacer lo que quiero. Básicamente, quiero mantenerme alejado de alinear elementos con píxeles porque la imagen podría verse muy diferente en un tipo de pantalla/resolución diferente. Sin embargo, cuando usas el comando de gravedad, todo sigue. Intenté desactivar la gravedad de un botón utilizando ignoreGravity y no funcionó. Esto es muy complicado. – Arcadia
Su fácil, no te Alinear con nada
<Button
android:id="@+id/the_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:text="Centered Button"/>
Extracción de cualquier alineamiento como Android: layout_alignParentStart = "true "y agregando centerInParent funcionó para mí. Si el "alinear" se queda en el centerInParent no funciona
Para central centran en una de la utilización dirección androide: layout_centerHorizontal = "true" o androide: layout_centerVertical = "true" en el diseño infantil
Utilice el atributo android:centerInParent="true"
dentro de una vista, cuando desee centrar la vista en Diseño relativo.
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/main_layout"
android:layout_width="match_parent"
android:layout_height="match_parent"
>
<TextView
android:layout_centerInParent="true"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="NWE"
android:textSize="30dp"/>
</RelativeLayout>
Se recomienda utilizar 'match_parent' en lugar de' fill_parent'. 'fill_parent' está en desuso a partir de la API 8 – RediOne1
debe haber alineado a la izquierda oa la derecha de vista padre
no utilice cualquiera de estos cuando se utiliza android:centerInParent="true"
códigos: -
android:layout_alignParentLeft="true"
android:layout_alignParentLeft="true"
android:layout_alignRight=""
etc.
Resumido
Adición:
android:layout_centerInParent="true"
solo funciona en RelativeLayout, si uno de los siguientes atributos también se establece para la vista:
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:layout_alignParentTop="true"
android:layout_alignParentBottom="true"
android:layout_alignParentRight="true"
android:layout_alignParentEnd="true"
cuales alignes la vista del niño a la vista principal El "centro" se basa en el eje de la alineación que ha elegido:
izquierda/derecha -> vertical,
superior/inferior -> horizontal
Ajuste de la gravedad del niño/contenido dentro de la vista:
android:gravity="center"
está centrando al niño dentro de la vista principal en cualquier caso, si no hay un conjunto de alineación. Opcional se puede elegir:
<!-- Axis to Center -->
android:gravity="center_horizontal"
android:gravity="center_vertical"
<!-- Alignment to set-->
android:gravity="top"
android:gravity="bottom"
android:gravity="left"
android:gravity="right"
android:gravity="fill"
...
Luego está:
android:layout_gravity="center"
que está centrando la vista en sí dentro es padre
Y al fin se puede añadir el siguiente atributo a los padres ven:
android:layout_centerHorizontal="true"
android:layout_centerVertical="true"
Es realmente fácil. Pruebe el siguiente código,
<RelativeLayout
android:id="@+id/second_RL"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_below="@+id/first_RL"
android:background="@android:color/holo_blue_bright"
android:gravity="center">
<Button
android:id="@+id/button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Button" />
</RelativeLayout>
Las respuestas con solo el código no son bienvenidas aquí. Intenta publicar más detalles sobre por qué funcionará la respuesta anterior. :) – Vivz
Gracias por la guía. Soy nuevo aquí. –
- 1. ¿Cómo centrar una vista usando RelativeLayout?
- 2. Android: ¿cómo centrar un botón programáticamente creado?
- 3. ¿Cómo centrar un icono en un botón extjs?
- 4. Centrar niños en un GridView
- 5. ¿Cómo centrar un ImageView en LinearLayout?
- 6. ¿Puedes deshabilitar el botón Atrás en un asistente JFace?
- 7. Alineación del botón Android a la parte inferior en RelativeLayout?
- 8. ¿Cómo colocar un botón en un RelativeLayout a través del código?
- 9. ¿Centro de artículos múltiples en un RelativeLayout sin ponerlos en un contenedor?
- 10. Align controla a centrar en un FlowLayout
- 11. RelativeLayout gravedad centro no funciona
- 12. ¿Puedes tener el botón iOS 6 3D en una MKMapView?
- 13. ¿Cómo centrar un botón de ancho desconocido en el lapso de un arranque?
- 14. ¿Cómo centrar un ImageView verticalmente en su elemento primario?
- 15. Usando layout_above en RelativeLayout
- 16. Cómo centrar un texto de dos líneas en un TextView en Android?
- 17. ¿Cómo centrar una vista personalizada en Android?
- 18. Cómo centrar un JqGrid
- 19. centro de un botón en un navigationbar
- 20. Obtiene Vista hijo en una RelativeLayout
- 21. Centrar un JLabel en un JPanel
- 22. aceptar eventos de clic en RelativeLayout
- 23. Cómo centrar enlaces en HTML
- 24. ¿Puedes hacer "un borde invisible"?
- 25. ¿Cómo puedo agregar espacios en RelativeLayout
- 26. RelativeLayout Gravity no aplicado?
- 27. Centro horizontal TextView en RelativeLayout
- 28. Centrar un sitio de desplazamiento horizontal de una página en el navegador (no centrar un div)
- 29. ¿Cómo centrar un iframe horizontalmente?
- 30. centrar una imagen en un círculo css
¿Idioma? ¿Marco de referencia? OS? –
¿Qué idioma/marco/etc. estás usando? – Nippysaurus
@Annold Spence: me ganaste por 24 segundos :) – Nippysaurus