Introducción con el Editor de Movimiento en Android Studio 4.0

Android Studio Motion Editor

Android Studio Motion Editor

Android Studio 4.0 representa una gran actualización para el IDE y ofrece una gran cantidad de desarrolladores de quedar atrapado en. Tal vez la más característica nueva y emocionante es el «Editor de Movimiento.» Esta característica está diseñada para ayudar a los desarrolladores a crear más atractivo, animados diseños. Esto puede mejorar significativamente la interfaz de usuario de cualquier aplicación, y ahora es mucho menos complicado de hacer!

Lea también: Una introducción a Jetpack Componer para una rápida interfaz de usuario Android diseños

Los fundamentos

Previamente, con el fin de animar un diseño, se tuvo que modificar manualmente XML. Este nuevo editor hace que el proceso sea mucho más fácil mediante la generación de código para usted y que le permite manejar el diseño real usando un editor visual. En teoría al menos!

Este ser de Google, la aplicación no es muy intuitivo

Esencialmente, usted será la creación de diferentes versiones de sus disposiciones, simplemente arrastrando y soltando los elementos que se han definido en una «base» de diseño. A continuación, podrás crear transiciones que se mueven esas versiones desde el primer arreglo a la segunda, y así sucesivamente.

Lea también: Toda la última Android desarrollador de noticias que usted necesita saber acerca!

Esto sin duda hace que la vida sea más fácil y es una adición bienvenida. Pero este ser de Google, la aplicación no es muy intuitivo out-of-the-box y algunas de las características clave son actualmente desaparecidos. Esta guía esperamos que se ponga en marcha y ayudar a dar sentido a la nueva herramienta.

La configuración de

Para empezar, primero necesita asegurarse de que usted tiene Android Studio 4.0, que está ahora disponible en el establo canal. Usted también necesita asegurarse de que usted está usando la siguiente ConstraintLayout de dependencia, como MotionLayout es parte de la restricción de diseño de la beta.

la aplicación 'com.android.apoyo.restricción:restricción-diseño:2.0.0-beta1'

O:

com.android.apoyo.restricción:restricción-diseño:2.0.0-beta1

A continuación, necesitará configurar un nuevo formato de Archivo de Recursos. Asegúrese de que el elemento Raíz se establece en: androidx.constraintlayout.movimiento.widget.MotionLayout.

Lea también: Android Studio tutorial para principiantes

Una vez construida, será llevado directamente a la nueva y brillante Editor de Movimiento!

En el momento, usted verá un mensaje que indica que el Editor de Movimiento no puede ser utilizado y que tiene un MotionScene error de Sintaxis. Gran comienzo!

Creación de su primera MotionScene

Primero, entonces, tenemos que crear un movimiento de la escena.

El MotionScene objeto describe cómo los elementos van a ser animados en la MotionLayout. Para definir este objeto, tenemos que crear otro archivo XML en el XML de la carpeta. Esta continuación, la lista de distribución establece que se pueden utilizar y cómo moverse entre ellos.

Behold Motion Editor

Behold Motion Editor

En una nota de lado, algunos otros IDEs habría hecho esto automáticamente cuando se crea por primera vez el nuevo MotionLayout. Pero estoy divagando!

Afortunadamente, Android Studio se encargará de hacer esto un poco más fácil para nosotros. Simplemente haga clic en el signo de exclamación rojo al lado de donde dice «MotionLayout» en el árbol de componentes, y se le pedirá que cree un nuevo MotionScene archivo. Haga clic en «Fix» y va a generar que en su nombre y ponerlo en el lugar adecuado!

El archivo generado de forma automática le dará el nombre de su archivo de diseño con «_scene.xml» puesto. Mi archivo de diseño se llama «motionlayoutexample» y mi escena se llama «motionlayoutexample_scene.xml.»

La escena debe contener el siguiente XML:

<MotionScene xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"> <ConstraintSet android:id="@+id/start">
<Restricción de android:id="@+id/widget" />
</ConstraintSet> <ConstraintSet android:id="@+id/end">
<Restricción de android:id="@id/widget" />
</ConstraintSet> <De transición
aplicación:constraintSetEnd="@id/final"
aplicación:constraintSetStart="@+id/start" />
</MotionScene>

Por el momento, el widget que esto se refiere a que no existe, pero vamos a dar el remedio que la siguiente.

Volver a la moción de diseño y, a continuación, elija la vista de código. Voy a dejar caer de Google ejemplo aquí:

<android.apoyo.la restricción.movimiento.MotionLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:herramientas="http://schemas.android.com/tools"
android:id="@+id/motionLayout"
android:layout_width="match_parent"
android:layout_height="match_parent"
aplicación:layoutDescription="@xml/motionlayoutexample_scene"
herramientas:showPaths="true"> <Ver
android:id="@+id/botón de"
android:layout_width="64dp"
android:layout_height="64dp"
android:background="@color/colorAccent"
android:text="Button" /> </android.apoyo.la restricción.movimiento.MotionLayout>

Tenga en cuenta que he cambiado el MotionScene archivo a mi propia motionlayoutexample_scene. Este diseño, simplemente muestra un botón en la pantalla con el ID «botón».

Molesto, yo necesitaba para reiniciar Android Studio antes de reconocer que yo había añadido el layoutDescription correctamente. Tratar de que si usted tiene problemas!

Motion Layout Ready

Motion Layout Ready

Una vez hecho esto, usted debería ser capaz de cambiar a la vista diseño y ver un montón de nuevos controles para jugar con. También te darás cuenta de que hay un botón en la parte superior izquierda de la pantalla!

Cómo animar

Los controles de la derecha permiten ver los dos estados en los que el diseño puede adoptar: un «inicio» del estado y un «final» del estado. También podrás ver la «base del estado», que es lo que estamos viendo ahora, sólo la forma en que se define en su carpeta de diseño.

Android Studio en realidad se refiere a estos como «ConstraintSets.» El icono en la parte superior izquierda de esta ventana (que se parece a dos nodos con un green pequeño plus por debajo) le permitirá crear un nuevo estado. La siguiente herramienta, junto con la flecha) define una nueva transición entre los estados. El tercer dedo icono le permite definir las acciones que provocan las transiciones y cambios de estado. Esto se llama un clic o arrastre controlador.

Move Button End State

Move Button End State

Compruebe la motionlayoutexample_scene XML y verás el «Inicio» y «Final» de la restricción de las etiquetas que definen estos dos diseños. Usted también encontrará la transición de la etiqueta que dice Android que hay algún tipo de transición entre los dos.

Usted puede elegir cualquiera de los estados con el fin de ver en el editor a la izquierda.

Vamos a tratar de cambiar a la «final» del estado. Con ese seleccionado, vas a editar las restricciones para colocar en la parte inferior de la pantalla.

De nuevo el interruptor y el botón por arte de magia a aparecer en la parte superior! De nuevo, se tomó un poco de tiempo antes de que Android Studio iba a jugar a la pelota para mí. Pero también se puede conseguir el mismo efecto mediante la edición de XML en su escena con la posición de partida en la primera restricción y la posición final en la segunda.

Esta es la forma en que Google lo hizo:

<ConstraintSet android:id="@+id/start">
<Restricción
android:id="@+id/botón de"
android:layout_width="64dp"
android:layout_height="64dp"
android:layout_marginStart="8dp"
movimiento:layout_constraintBottom_toBottomof="padre de familia"
movimiento:layout_constraintStart_toStartOf="padre de familia"
movimiento:layout_constraintTop_toTopOf="principal" />
</ConstraintSet> <ConstraintSet android:id="@+id/end">
<Restricción
android:id="@+id/botón de"
android:layout_width="64dp"
android:layout_height="64dp"
android:layout_marginEnd="8dp"
movimiento:layout_constraintBottom_toBottomof="padre de familia"
movimiento:layout_constraintEnd_toEndOf="padre de familia"
movimiento:layout_constraintTop_toTopOf="principal" />
</ConstraintSet>

Para ver la animación en acción, simplemente haga clic en la transición en sí misma (la flecha por encima de los dos estados), a continuación, haga clic en reproducir. Ahora debería ver repetidamente el botón deslice la pantalla hacia abajo! También puede establecer fotogramas clave de esta forma por más avanzadas animaciones.

Finalmente, decidir lo que desea activar esta animación mediante el clic o arrastre controlador. Simplemente elija la transición a implementar en el primer cuadro de lista desplegable y, a continuación, la vista que desea registrar la acción.

A dónde ir desde aquí

Mientras que la herramienta es un poco quisquilloso y buggy ahora, que sin duda tiene un montón de potencial. Y hay más que usted puede hacer con él también!

Por supuesto, usted puede agregar nuevos puntos de vista como lo haría normalmente a través del editor (asegúrese de que el Movimiento predeterminado Diseño está seleccionado). También puede agregar nuevos estados y las transiciones entre ellos. Si desea añadir elementos personalizados a tus animaciones (como cambios de color), puede hacerlo mediante el uso de Atributos Personalizados. Afortunadamente, esto será construido en el editor adecuado en el futuro.

Click Handler

Click Handler

Echa un vistazo a la documentación oficial de Google para obtener más detalles. Espero que esta introducción ha llenado en los fundamentos y ahora tiene una buena idea de lo que se puede hacer con el nuevo Editor de Movimiento y cómo empezar. Déjanos saber cómo te va en los comentarios de abajo!

Feliz animación!

Deja un comentario

A %d blogueros les gusta esto: