Android: desplácese / mueva el ListView en sí


0 Answers

Necesita agregar un encabezado a la vista de lista. Puedes hacerlo haciendo esto:

final View header = LayoutInflater.from(getActivity()).inflate(R.layout.myheader, null);
((ListView) getActivity().findViewById(R.id.list)).addHeader(header);

Entonces puedes hacer el efecto de desplazamiento haciendo esto:

    ((ListView) getActivity().findViewById(R.id.list)).setOnScrollListener(new AbsListView.OnScrollListener() {
        @Override
        public void onScrollStateChanged(AbsListView view, int scrollState) {

        }

        @Override
        public void onScroll(AbsListView view, int firstVisibleItem, int visibleItemCount, int totalItemCount) {
            if (v.getChildCount() > 0 && v.getChildAt(0) != null)
                header.setTranslationY(Math.round(-v.getChildAt(0).getTop() * 0.5));
        }
    });

Aquí header es el encabezado de la lista

Question

He visto algunas aplicaciones modernas de Android e iOS donde habrá una Imagen en la parte superior de la página que cubre todo el ancho de la pantalla. Debajo de él, habrá un ListView que se extiende hasta la página.

Cuando comienza a desplazarse hacia abajo en ListView , ListView comienza a moverse hacia arriba hasta llegar a la parte superior de la pantalla, es decir, cubriendo completamente la pantalla superior.

Ejemplos de aplicaciones que hacen esto son: Google Play Store , Huffington Post , YouTube .

Intenté buscar en Google esto pero no he podido encontrar una fuente relativa.




Related