Android: Enviar un View hacia atrás (Cambiar Órden Z en Código)




En Android tenemos un método bringToFront() que sirve, como el nombre lo indica, ordenar los Views para enviar un View en particular al frente, es decir aumentar el órden Z al máximo. El órden Z determina que View aparece adelante o atrás.

Pero si queremos hacer lo contrario, nos damos cuenta que un método bringToBack(), sendToBack() o equivalente no existe, y debemos usar un pequeño truco.


El truco consiste en quitar el View y volverlo a agregar especificando su valor de órden Z. Si es hacia atrás, entonces es 0.

public static void sendToBack(final View child) {
    final ViewGroup parent = (ViewGroup)child.getParent();
    if (null != parent) {
        parent.removeView(child);
        parent.addView(child, 0);
    }
}

No hay comentarios:

Publicar un comentario