Cuando los listitems se desplazan rápidamente, setOnScrollListener no funciona

He intentado implementar la lista de encabezados pegajosa que se describe en el tutorial de

Http://javatechig.com/android/listview-header-parallax-with-sticky-view-in-android

El problema es cuando se desplaza la lista muy rápido, el encabezado no se mueve a la parte superior de la pantalla como se desee.

Intenté registrar el valor de topY y heroTopY en el siguiente método.

@Override public void onScroll(AbsListView view, int firstVisibleItem, int visibleItemCount, int totalItemCount) { /* Check if the first item is already reached to top.*/ if (view.getFirstVisiblePosition() == 0) { View firstChild = listView.getChildAt(0); topY = 0; if (firstChild != null) { topY = firstChild.getTop(); Log.d("topY", "" + topY); } heroTopY = stickyViewSpacer.getTop(); Log.e("heroTopY", "" + heroTopY); Log.d("topY,heroTopY", topY + "," + heroTopY); stickyView.setY(Math.max(0, heroTopY + topY)); // Set the image to scroll half of the amount that of ListView heroImageView.setY(topY * 0.5f); } } 

La salida del registro es:

 09-01 17:35:23.692 19530-19530/com.javatechig.parallaxlistview D/topY﹕ 0 09-01 17:35:23.692 19530-19530/com.javatechig.parallaxlistview E/heroTopY﹕ 500 09-01 17:35:23.692 19530-19530/com.javatechig.parallaxlistview D/topY,heroTopY﹕ 0,500 09-01 17:35:23.856 19530-19530/com.javatechig.parallaxlistview D/topY﹕ -29 09-01 17:35:23.856 19530-19530/com.javatechig.parallaxlistview E/heroTopY﹕ 500 09-01 17:35:23.856 19530-19530/com.javatechig.parallaxlistview D/topY,heroTopY﹕ -29,500 09-01 17:35:23.873 19530-19530/com.javatechig.parallaxlistview D/topY﹕ -72 09-01 17:35:23.873 19530-19530/com.javatechig.parallaxlistview E/heroTopY﹕ 500 09-01 17:35:23.873 19530-19530/com.javatechig.parallaxlistview D/topY,heroTopY﹕ -72,500 09-01 17:35:23.892 19530-19530/com.javatechig.parallaxlistview D/topY﹕ -84 09-01 17:35:23.892 19530-19530/com.javatechig.parallaxlistview E/heroTopY﹕ 500 09-01 17:35:23.892 19530-19530/com.javatechig.parallaxlistview D/topY,heroTopY﹕ -84,500 

Como se ve en la salida del registro, el valor topY se atasca en 84 y por lo tanto el encabezado. Introduzca aquí la descripción de la imagen ¿Cómo resolver esto ?? Cualquier solución sería útil!

FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.