estoy usando ConstraintLayout en mi aplicación para hacer el diseño de aplicaciones. Estoy tratando de crear una pantalla donde uno EditText y Button debe estar en el centro y Button debe estar debajo de EditText con un margen Superior solo 16dp.
Aquí está mi diseño y captura de pantalla de cómo se ve en este momento.
Hay una forma más sencilla. Si establece restricciones de diseño de la siguiente manera y su EditText tiene un tamaño fijo, se centrará en el ConstraintLayout:
El par izquierdo/derecho centra la vista horizontalmente y el par superior/inferior la centra verticalmente. Esto se debe a que cuando establece las restricciones izquierda, derecha o superior e inferior más grandes que la vista en sí, la vista se centra entre las dos restricciones, es decir, el sesgo se establece en 50%. También puede mover la vista hacia arriba/abajo o hacia la derecha/izquierda configurando el sesgo usted mismo. Juega un poco con él y verás cómo afecta la posición de las vistas.
Este es un enfoque mucho mejor que el uso de directrices.
– arena
17 de noviembre de 2017 a las 15:21
Esto es más apropiado y también lo he visto en muchas charlas y ejemplos de funcionarios.
– TapanHP
18 de septiembre de 2018 a las 7:32
Sencillo, fácil de entender.
– Yohanim
28 de diciembre de 2018 a las 4:27
Las pautas son mejores porque una vez que tiene un diseño complejo, lo que sucederá una vez que el marketing lo controle, el centrado simplista ya no funciona. Es mejor tener guías y centrar la guía para la parte superior e inferior.
–Nick Turner
18 de enero de 2019 a las 14:34
esto solo es útil si la vista de texto que desea centrar no se usa para ajustar la posición de otros objetos de vista …
– Lago Bénédicte
13 de marzo de 2020 a las 11:04
Pycpik
Actualizar:
Cadena
Ahora puede utilizar el chain característica en packed modo como se describe en la respuesta de Eugene.
Guía
Puede usar una guía horizontal en una posición del 50% y agregar restricciones inferiores y superiores (8dp) para editar el texto y el botón:
Gracias @Pycpik No pude entender cuál es el uso de <android.support.constraint.Guideline ? ¿Necesitamos usar cada vez que usamos ConstraintLayout ?
– N. Sharma
31 de marzo de 2017 a las 15:10
Cuál es el uso de layout_constraintGuide_percent ?
– N. Sharma
31 de marzo de 2017 a las 15:13
Guideline es solo un elemento invisible en el que puede anclar sus puntos de vista. layout_constraintGuide_percent es el porcentaje en el padre. Aquí 0.5 es 50 % de altura
Puede centrar el del medio y agregar uno arriba y otro abajo o ponerlos en un LinearLayout y céntralo.
– Pycpik
31 de marzo de 2017 a las 15:42
Eugenio Brusov
La solución con guía funciona solo para este caso particular con una sola línea EditText. Para que funcione para multilínea EditText Deberías usar layout_constraintVertical_chainStyle="packed".
Esta es sin duda la mejor respuesta. Otras respuestas solo funcionan para una o dos vistas. Este es más escalable, ya que funciona para una, dos y tantas vistas como quieras.
– mdelolmo
6 de marzo de 2019 a las 16:07
por qué con Botón simple también sirve para android:layout_width="wrap_content"
– Código para la vida
23 de abril a las 6:22
vive el amor
Puede centrar una vista como un porcentaje del tamaño de la pantalla.
Esto se hizo usando ConstraintLayout versión 1.1.3. No olvide agregarlo a sus dependencias en gradle y aumente la versión si hay una nueva versión disponible:
Esta web utiliza cookies propias y de terceros para su correcto funcionamiento y para fines analíticos y para mostrarte publicidad relacionada con sus preferencias en base a un perfil elaborado a partir de tus hábitos de navegación. Al hacer clic en el botón Aceptar, acepta el uso de estas tecnologías y el procesamiento de tus datos para estos propósitos.
Configurar y más información