Cómo crear vista de lista de este tipo en Android 1.6 o 2 (debido a renderScript, que trabaja sólo en 3 o más tarde, pero necesito lista para trabajar en casi todos los androides):Android: Vertical ListView con hileras superpuestas
Respuesta
I utilizarse Camera.setTranslate(x, 0, z)
en drawChild, donde cambia la posición x para la virtualización de rotación y z para overlaping. Luego hubo un problema con la superposición, ya que el último elemento estaba en la parte superior y el primero en la capa inferior. Por lo tanto, en el método onCreate()
llamado this.setChildrenDrawingOrderEnabled(true)
y reemplazado protected int getChildDrawingOrder (int childCount, int i) {}
donde podría cambiar el orden para las filas centrales y posteriores. Esta idea fue dada por Renard, quien me sugirió en mi otra publicación casi lo mismo here.
Mi getChildDrawingOrder (int, int) aplicación para obtener la superposición que necesito:
@Override
protected int getChildDrawingOrder (int childCount, int i) {
int centerChild = 0;
//find center row
if ((childCount % 2) == 0) { //even childCount number
centerChild = childCount/2; // if childCount 8 (actualy 0 - 7), then 4 and 4-1 = 3 is in centre.
int otherCenterChild = centerChild - 1;
//Which more in center?
View child = this.getChildAt(centerChild);
final int top = child.getTop();
final int bottom = child.getBottom();
//if this row goes through center then this
final int absParentCenterY = getTop() + getHeight()/2;
//Log.i("even", i + " from " + (childCount - 1) + ", while centerChild = " + centerChild);
if ((top < absParentCenterY) && (bottom > absParentCenterY)) {
//this child is in center line, so it is last
//centerChild is in center, no need to change
} else {
centerChild = otherCenterChild;
}
}
else {//not even - done
centerChild = childCount/2;
//Log.i("not even", i + " from " + (childCount - 1) + ", while centerChild = " + centerChild);
}
int rez = i;
//find drawIndex by centerChild
if (i > centerChild) {
//below center
rez = (childCount - 1) - i + centerChild;
} else if (i == centerChild) {
//center row
//draw it last
rez = childCount - 1;
} else {
//above center - draw as always
// i < centerChild
rez = i;
}
//Log.i("return", "" + rez);
return rez;
}
espero que este post va a ayudar a alguien en el futuro
captura de pantalla es en realidad casi lo mismo que he mencionado en mi pregunta . Solía alfa, por lo que los elementos superpuestos está un poco ver a través de:
@pengwang ¿qué demostración? ¿Quieres decir captura de pantalla del resultado? –
sí, tienes razón, puedes compartir tu captura de pantalla del código de resultado – pengwang
@PooLaS por favor dame el enlace de preferencia o publica tus clases para entender esto para implementar. –
- 1. Vistas superpuestas en Android
- 2. Compatibilidad con varias vistas superpuestas activas superpuestas en Android
- 3. Listview Horizontal Vertical dentro Listview en QML
- 4. Desplazamiento vertical de Android para ListView dentro Desplazamiento horizontalView
- 5. textviews RelativeLayout superpuestas
- 6. Desplazamiento vertical de ListView de C#
- 7. ListView con Alphabet en Android
- 8. Android ListView update con SimpleCursorAdapter
- 9. Android ListView con encabezado complejo
- 10. ListView con diseño de filas personalizado - Android
- 11. Detección de rutas superpuestas en Android
- 12. Edittext en Listview android
- 13. Android. RadioButtons en un ListView
- 14. Personalizar Android ListView Colors?
- 15. Android - ListView con 2 colores diferentes
- 16. Android - Diseño vertical solamente
- 17. Android: ¿una galería vertical?
- 18. ListView dentro de otra ListView
- 19. ListView Android con OnItemClickListener Y GestureDetector
- 20. Android: wrap_content no funciona con ListView
- 21. Android - Widget con Scroll Listview Manual Refresh
- 22. Diseño de Android con ListView y botones
- 23. Ejecución Autocompletar con ListView en Android
- 24. Android ListView Color de texto
- 25. Divisiones superpuestas
- 26. Android Implementing Chat Bubble en ListView
- 27. Programmatically Fling ListView Android
- 28. Android ListView Selección Problema
- 29. Temas de Android ListView
- 30. android ListView scrollbarStyle
Alguna idea de cómo acercarse a eso? –