studio scanner para libreria how example devices connectedthread android android-animation material-design

scanner - listview bluetooth android example



Feature discovery animations para Android (3)

Necesita hacer una animación personalizada o bien puede usar Ripple Effect + Reveal y configurarlo en el ícono del cajón de navegación,

Animación Circular Reveal

void enterReveal() { // previously invisible view final View myView = findViewById(R.id.my_view); // get the center for the clipping circle int cx = myView.getMeasuredWidth() / 2; int cy = myView.getMeasuredHeight() / 2; // get the final radius for the clipping circle int finalRadius = Math.max(myView.getWidth(), myView.getHeight()) / 2; // create the animator for this view (the start radius is zero) Animator anim = ViewAnimationUtils.createCircularReveal(myView, cx, cy, 0, finalRadius); // make the view visible and start the animation myView.setVisibility(View.VISIBLE); anim.start(); }

Desde mayo, Google ha actualizado sus directrices de diseño de materiales en su sitio web. He visto un patrón de diseño interesante y genial en una de las nuevas secciones denominadas Detección de funciones .

Me gustaría implementar la animación para ''descubrir'' el botón Cajón de navegación . Hay una animación similar en la última actualización de Google Fit, para el cajón de navegación y el botón de acción flotante.

Con frecuencia, para las animaciones de Android, Google proporciona una guía de interfaz de usuario agradable e impresionante, pero no tenemos más información para desarrollarla para nuestras propias aplicaciones.

¿Sabes si hay soluciones nativas con bibliotecas Android para implementar este tipo de animaciones? En caso afirmativo, ¿está disponible por debajo de Android 5.0 (API 21), puede estar por encima de Android 4.1 o superior?

Editar: hice un proyecto Github para realizar la misma animación. Puede encontrarlo aquí: https://github.com/Guimareshh/Feature-discovery-animations

Gracias !


Respondiendo a su pregunta, Google siempre proporciona nuevas muestras de componentes de widgets interesantes. La mayoría de ellos se agregarán solo a una nueva versión de Android. Y hay diferentes razones para eso. Por ejemplo, debido a que los nuevos widgets usan recursos y funcionan solo en la nueva versión de Android, que tiene un motor de IU actualizado. Y otra...

Por eso, no hay una animación Reveal oficial de Google, que solo funciona en Android 5.0>.

Pero hay muchos backports para eso:

Eche un vistazo a todos los backports disponibles y no oficiales para Android Awesome Android UI .

Cuando Google presentó Android Material, no había ninguna biblioteca para todos esos elementos. Pero en poco tiempo, por diferentes desarrolladores se escribieron muchas librerías útiles. Pero después de esa popularidad, Google presenta toda la biblioteca para esos widgets.

Como resultado, no hay backports y lo más probable es que Google no introduzca esos widgets. Pero si escuchas tu pregunta, creo que puedes hacerlo, utilizando los respaldos no oficiales, vinculados anteriormente.


También creé este DesignPattern en una vista personalizada. Puedes encontrarlo here . Tenga en cuenta que esta es mi primera vista personalizada publicada y todavía está en desarrollo (por lo que podrían ser algunos errores y falta algo de documentación) pero debería ser lo suficientemente buena para el uso diario.

Para usarlo, agrega la biblioteca a tus dependencias:

compile ''com.cilenco.libraries:featurediscovery:1.0.2'' or compile ''com.cilenco.libraries:featurediscovery:+'' always newest version

Después de eso, puedes crear un DiscoveryView como este. Verifique todas las otras funciones para ajustar el aspecto y el control sobre la Vista.

DiscoveryView discoveryView = new DiscoveryView.Builder(context, view) .setPrimaryText(R.string.header) .setSecondaryText(R.string.description) .setOnClickListener(this) .build(); discoveryView.show();

Para que esta vista sea aún mejor, no dude en informar problemas y realizar solicitudes de extracción al repositorio si encuentra algún error o tiene alguna idea nueva para él.