¿Cómo llevar una vista al frente sin llamar a bringToFront ()?

Aparentemente hay unerror en Android que se rompeView.bringToFront.

Si tengo Vistas organizadas en un GridView y quiero traer una Vista al frente llamando a bringToFront (), puede moverse a la posición inferior derecha en el GridView.

Algo sospechoso está sucediendo allí, así que no puedo usar bringToFront (). Cuando no lo llamo, todo funciona bien. Pero las vistas se superponen: si uso la animación de escala para escalar una vista, las vistas se oscurecen parcialmente en la parte inferior y a la derecha.

He comprobado la fuente de bringToFront y llama a parent.bringChildToFront (...)

es este metodo

public void bringChildToFront(View child) {
     int index = indexOfChild(child);
      if (index >= 0) {
          removeFromArray(index);
          addInArray(child, mChildrenCount);
          child.mParent = this;
      }
  }

aparentementeelimina la vista de sí mismo! ¡Sin piedad! ¿Es un ViewGroup tan tonto que no puede administrar los índices Z de ninguna otra manera que los controles aleatorios? Obviamente, cuando GridView elimina su chil, dy luego lo vuelve a agregar, ¡se coloca al final de la cuadrícula!

¿Hay algo que pueda hacer para mostrar una Vista encima de otras sin recurrir a alguna piratería? Una cosa que me viene a la mente es crear otra vista sobre GridView, que parecerá estar sobre la que estoy tratando de traer a FrontFront (), pero no me gusta esta solución.

Respuestas a la pregunta(5)

Su respuesta a la pregunta