Come hide ActionBar mentre scorrimento di ListView in android?

Ho bisogno di creare una GUI con un ListView e un ActionBar che si nasconderà quando scorrimento verso il basso e quando lo scorrimento deve riapparire.

Le seguenti guide non mi hanno aiutato:

  • Voglio memorizzare l'elenco di elementi visualizzati in listview per android Sqlite Database
  • Come avere un ImageButton trasparente: Android
  • Pattern "Una attività, più viste": Vantaggi e svantaggi
  • onListItemClick () non funziona per ListView in Android
  • Eclipse Android SDK è lenta per performance di Content Assist
  • Accesso ai beni di altre applicazioni Android su Jelly Bean
    • https://mzgreen.github.io/2015/06/23/How-to-hideshow-Toolbar-when-list-is-scrolling%28part3%29/
    • https://github.com/ksoichiro/Android-ObservableScrollView

    Ho bisogno di qualcosa di simile:

    immettere qui la descrizione dell'immagine

  • Come rimuovere il text in progressBar in Android?
  • Come creare un sottomenu per il button di azione a galleggiamento nel disegno di materiale Android?
  • Aggiungere il button positivo a Dialog
  • Google Glass streaming video al server
  • Eliminazione di SMS tramite BroadCastReceiver - Android
  • FirebaseRecyclerAdapter con visualizzazione vuota
  • 4 Solutions collect form web for “Come hide ActionBar mentre scorrimento di ListView in android?”

    Se desideri get un elenco con questo comportmento, devi:

    • aggiungere la libreria di supporto per la progettazione con la compile 'com.android.support:design:22.2.0'
    • Utilizza un CoordinatorLayout con una barra degli strumenti where devi definire l' app:layout_scrollFlags="scroll|enterAlways"
    • Utilizza un RecyclerView anziché un ListView . Come descritto qui, ListView e GridView hanno il comportmento previsto con il CoordinatorLayout solo con API> 21. In questo caso è necessario utilizzare setNestedScrollingEnabled(true);

    Il post ufficiale del blog mostra questo caso:

     <android.support.design.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" android:layout_width="match_parent" android:layout_height="match_parent"> <! -- Your Scrollable View --> <android.support.v7.widget.RecyclerView android:layout_width="match_parent" android:layout_height="match_parent" app:layout_behavior="@string/appbar_scrolling_view_behavior" /> <android.support.design.widget.AppBarLayout android:layout_width="match_parent" android:layout_height="wrap_content"> <android.support.v7.widget.Toolbar ... app:layout_scrollFlags="scroll|enterAlways"> </android.support.design.widget.AppBarLayout> </android.support.design.widget.CoordinatorLayout> 

    Consiglierei di utilizzare la nuova libreria di progettazione di supporto da parte di Google.

    Includi nei tuoi dipendenti:

     compile 'com.android.support:design:22.2.0' 

    quindi utilizzare l' AppBarLayout insieme a NestedScrollView .

    Per la tua Toolbar definisci l' app:layout_scrollFlags="scroll|enterAlways" , che dice che scomparirà mentre scorri e tornate immediatamente se scorri in alto (significa che non devi scorrere fino in fondo).

     <android.support.design.widget.AppBarLayout android:id="@+id/appbar" android:layout_width="match_parent" android:layout_height="wrap_content" android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar"> <android.support.v7.widget.Toolbar android:id="@+id/toolbar" android:layout_width="match_parent" android:layout_height="?attr/actionBarSize" android:background="?attr/colorPrimary" app:popupTheme="@style/ThemeOverlay.AppCompat.Light" app:layout_scrollFlags="scroll|enterAlways" /> </android.support.design.widget.AppBarLayout> <android.support.v4.widget.NestedScrollView android:layout_width="match_parent" android:layout_height="match_parent" android:layout_gravity="fill_vertical" app:layout_behavior="@string/appbar_scrolling_view_behavior"> <FrameLayout android:id="@+id/container" android:layout_width="match_parent" android:layout_height="match_parent"/> </android.support.v4.widget.NestedScrollView> 

    è necessario utilizzare CoordinatorLayout per questa attività. Fa parte della libreria di progettazione di supporto. Qui , nella sezione CoordinatorLayout e nella barra degli app , è ansible trovare un esempio

    Utilizza [CoordinatorLayout]: https://developer.android.com/reference/android/support/design/widget/CoordinatorLayout.html , che consente la co-oridanza tra le viste per bambini. è come agire (AppBarLayout-> scorrimento) in qualche vista quando c'è un comportmento osservato (ListView-> scorrimento) in un'altra vista.

    1. Crea listView nestedScrollingEnabled, funziona per> API 21

       android:nestedScrollingEnabled="true" 
    2. Avviare il comportmento del layout per scorrere appbar.

       android:nestedScrollingEnabled="true" app:layout_behavior="@string/appbar_scrolling_view_behavior" 
    3. Qualsiasi layout (ToolBar / TabLayout / qualsiasi), che è necessario per mostrare-hide / scorrere, posizionarlo all'interno di AppBarLayout e abilitare la barra di scorrimento.

       app:layout_scrollFlags="scroll|enterAlways" 
    L'Android è un fan Android di Google, tutto su telefoni Android, Android Wear, Android Dev e applicazioni Android Games e così via.