studio - Cómo usar el nuevo Diseño de Restricción de Android para reducir la jerarquía de Vista
this view is not constrained (10)
Cambie las dependencias en el archivo build.gradle
.
Utilice compilar com.android.support.constraint:constraint-layout:1.0.0-beta1
lugar.
¿Tiene alguna idea sobre cómo usar el nuevo Diseño de Restricciones que se anunció recientemente en Google I / O de este año?
De Docs
Si está actualizando un proyecto existente, proceda de la siguiente manera:
Asegúrese de tener el último repositorio de soporte de Android ( versión 32 o superior ): // Esta fue la parte que me faltaba
Haga clic en Herramientas> Android> Administrador de SDK. Haga clic en la pestaña Herramientas de SDK. Seleccione Android Support Repository, luego haga clic en OK.
Agregue la biblioteca de distribución de restricciones existente como una dependencia en su archivo build.gradle:
dependencies {
compile ''com.android.support.constraint:constraint-layout:1.0.0''
}
En la barra de herramientas o notificación de sincronización, haga clic en Sincronizar proyecto con archivos Gradle.
Para agregar un nuevo diseño de restricción a su proyecto:
- Haga clic derecho en el directorio de diseño de su módulo, luego haga clic en Nuevo> XML> Diseño XML. Ingrese un nombre para el diseño e ingrese "android.support.constraint.ConstraintLayout" para la etiqueta raíz. Haga clic en Finalizar.
Para convertir un diseño existente a un diseño de restricción:
- Abra su diseño existente en Android Studio y seleccione la pestaña Diseño en la parte inferior de la ventana del editor. En la ventana Árbol de componentes, haga clic con el botón derecho en el diseño y haga clic en Convertir en Restricción.
Google lanzó la versión oficial 1.0 ConstraintLayout
ahora importa la versión no beta
compile ''com.android.support.constraint:constraint-layout:1.0.0''
Consulte aquí la información http://tools.android.com/recent/constraintlayout10isnowavailable
Probé muchas versiones, ¡pero no pude resolver el problema! Finalmente dejo que Android Studio resuelva este problema.
En el archivo XML, al lado del mensaje de error, ¡puede ver esta opción! Haga clic en eso para importar la versión reccomonded
o puede presionar alt + enter colocando el cursor en la línea de error
Obtuve restricción de diseño: 1.0.0-alpha8, cuando presioné alt + enter
compile ''com.android.support.constraint: constraint-layout: 1.0.0-alpha8''
Puede ir a un archivo de recursos de diseño existente, abrir el editor visual y hacer clic derecho en un RelativeLayout (por ejemplo) y hacer clic en la opción para convertir a un diseño de restricción.
También debe agregar la dependencia de Gradle en el archivo build.gradle:
compile ''com.android.support.constraint:constraint-layout:1.0.0''
Vaya a través de este link de Google CodeLabs . Tendrá una idea básica del diseño de restricciones y cómo usar diferentes restricciones como la restricción Manual Constraint
, la Auto Connect
y la Inference
.
También existe UI Builder
& Inspector
que nos ayudará a construir una interfaz de usuario más rápida.
agregar dependencias
compile ''com.android.support.constraint:constraint-layout:1.0.0-alpha9''
Y cree un nuevo archivo xml de diseño -> pestaña de diseño goto -> haga clic con el botón derecho en su diseño raíz y seleccione la última opción convertir LinearLayout en Restricción
Ver captura de pantalla
deberías agregar el repositorio de google maven en el archivo gradle de nivel de módulo ( parte importante )
repositories {
maven {
url ''https://maven.google.com''
}
}
luego agregue esta línea en dependencias:
compile ''com.android.support.constraint:constraint-layout:1.0.2''
compile ''com.android.support.constraint:constraint-layout-solver:1.0.2''
Comprender los beneficios de rendimiento de ConstraintLayout describe el gasto de una jerarquía de diseño tradicional. Da un ejemplo de este diseño construido con diseños anidados
y afirma que
ConstraintLayout tiene un 40% mejor en la fase de medida / diseño que RelativeLayout
Este proyecto de Codelab muestra cómo usar ConstaintLayout para reducir la jerarquía de Vista y aplanar el diseño mencionado anteriormente.
1) Para diseñar un nuevo diseño usando ConstraintLayout, incluya la dependencia en el archivo app.gradle
compile ''com.android.support.constraint:constraint-layout:1.0.0-alpha8''
Nota: Para cada vista en el diseño, debe incluir los siguientes atributos, de lo contrario, las vistas se muestran en (0,0).
<android.support.constraint.ConstraintLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
....>
<View
android:id="@+id/top_view"
.../>
<View
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toBottomOf="@+id/top_view"
app:layout_constraintBottom_toTopOf="@+id/bottom_view"
..../>
<View
android:id="@+id/bottom_view"
.../>
</android.support.constraint.ConstraintLayout>
2) Para convertir un archivo de diseño existente en un diseño de restricción:
Abra su diseño existente en Android Studio y seleccione la pestaña Diseño en la parte inferior de la ventana del editor. En la ventana Árbol de componentes, haga clic con el botón derecho en el diseño raíz y haga clic en Convertir en Restricción. Luego incluya los atributos definidos arriba.