¿Cómo se oculta la animación de ActionBar y mantener las pestañas?

En la versión 5 de la aplicación Google Play Store, desplácese hasta el contenido, ActionBar activado con desplazamiento, pero las pestañas están fijas para subir.

¿Como hacer esto?

ANTES DE DESPLAZAR

introduzca la descripción de la imagen aquí

DESPUÉS DEL DESPLAZAMIENTO

introduzca la descripción de la imagen aquí

Como otros han sugerido, utilice ObservableScrollView desde: https://github.com/ksoichiro/Android-ObservableScrollView

Intente poner la Toolbar y el SlidingTabStrip en el mismo contenedor, luego anime el contenedor mientras el usuario desplaza el ObservableScrollView , por ejemplo:

 <FrameLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" tools:context=".MainActivity"> <com.github.ksoichiro.android.observablescrollview.ObservableListView android:id="@+id/listView" android:layout_height="match_parent" android:layout_width="match_parent"/> <LinearLayout android:id="@+id/toolbarContainer" android:orientation="vertical" android:elevation="10dp" android:background="@color/material_deep_teal_200" android:layout_width="match_parent" android:layout_height="wrap_content"> <android.support.v7.widget.Toolbar android:id="@+id/toolbar" android:layout_width="match_parent" android:layout_height="?attr/actionBarSize"/> <!--Placeholder view, your tabstrip goes here--> <View android:layout_width="wrap_content" android:layout_height="48dp"/> </LinearLayout> </FrameLayout> 

Entonces, cuando se anula el ObservableScrollViewCallbacks podría hacer algo como esto:

 @Override public void onScrollChanged(int scrollY, boolean firstScroll, boolean dragging) { toolbarContainer.animate().cancel(); int scrollDelta = scrollY - oldScrollY; oldScrollY = scrollY; float currentYTranslation = -toolbarContainer.getTranslationY(); float targetYTranslation = Math.min(Math.max(currentYTranslation + scrollDelta, 0), toolbarHeight); toolbarContainer.setTranslationY(-targetYTranslation); } @Override public void onUpOrCancelMotionEvent(ScrollState scrollState) { float currentYTranslation = -toolbarContainer.getTranslationY(); int currentScroll = listView.getCurrentScrollY(); if (currentScroll < toolbarHeight) { toolbarContainer.animate().translationY(0); } else if (currentYTranslation > toolbarHeight /2) { toolbarContainer.animate().translationY(-toolbarHeight); } else { toolbarContainer.animate().translationY(0); } } 

El elemento onUpOrCancelMotionEvent consiste en animar el contenedor para evitar que la barra de herramientas sólo se muestre a la mitad o se oculte.

Aquí hay un video de demostración solo para referencia: https://drive.google.com/file/d/0B7TH7VeIpgSQSzZER1NneWpYa1E/view?usp=sharing

Echa un vistazo a estos enlaces (especialmente el segundo enlace):

Android google-play-likes listview

ListView con un encabezado (medio y ocultable)

La respuesta está aquí:

https://github.com/ksoichiro/Android-ObservableScrollView : D

Esta biblioteca es excelente para mi caso y muy otros

Es genial que respondas a tu pregunta por ti mismo). Aquí hay otra pequeña pista: Usa un diseño separado para tus pestañas o inténtalo en tu barra de herramientas y luego tranlsate la barra de herramientas sólo hasta donde puedas ver las pestañas en la parte superior.

  • ViewPager ¿Fragmentos que se destruyen con el tiempo?
  • Cómo alimentar datos a PagerAdapter
  • Configuración de RadioButton.setChecked con varios fragmentos
  • Android: ViewFlipper o ViewPager - ¿Cuál es la mejor opción?
  • ¿Ciclo de vida de un ViewPager y BackStack reemplazados?
  • Vertical Ver animación de buscapersonas en android
  • Los valores de EditText en Android Fragment no se actualizan
  • Guardar / Actualizar los datos de EditText del fragmento en un FragmentStatePagerAdapter
  • ViewPager analógico para paginación a horizontales y verticales
  • Guardar estado de fragmento en ViewPager
  • Reemplazar Fragmento actual en ViewPager en Android
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.