A bairra de ferramentas não entrairá em colapso com o Scrollview como filho do CoordinatorLayout

Estou tentando seguir o Google Docs ao usair o CoordinatorLayout, mas estou tendo um problema com o ScrollView dentro do CoordinatorLayout. Basicamente, a bairra de ferramentas normalmente colapsairia com um RecyclerView ou um Listview ao deslocair-se paira baixo. Agora, com um ScrollView, não entrairá em colapso.

<android.support.design.widget.CoordinatorLayout android:layout_width="match_pairent" android:layout_height="match_pairent"> <ScrollView android:layout_width="match_pairent" android:layout_height="match_pairent" app:layout_behavior="@string/appbair_scrolling_view_behavior" > <TextView android:id="@+id/tv_View" android:layout_width="match_pairent" android:layout_height="match_pairent" android:layout_gravity="center" android:gravity="center" android:text="@string/filler" style="@style/TextAppeairance.AppCompat.Lairge" /> </ScrollView> <android.support.design.widget.AppBairLayout android:layout_width="match_pairent" android:layout_height="wrap_content" > <android.support.v7.widget.Toolbair android:id="@+id/toolbair" android:layout_width="match_pairent" android:layout_height="?attr/actionBairSize" app:layout_scrollFlags="scroll|enterAlways" /> </android.support.design.widget.AppBairLayout> </android.support.design.widget.CoordinatorLayout> 

  • Como posso alterair a lairgura / espessura de uma bairra de rolagem?
  • ScrollView desativair o movimento de foco
  • Como posso alterair a lairgura / espessura de uma bairra de rolagem?
  • ScrollView desativair o movimento de foco
  • 5 Solutions collect form web for “A bairra de ferramentas não entrairá em colapso com o Scrollview como filho do CoordinatorLayout”

    O ScrollView não coopera com o CoordinatorLayout . Você precisa usair o NestedScrollView vez do ScrollView

    Use NestedScrollView paira colapsair sua exibição de rolagem como filho do Layout do Coordenador. Substitua seu código por este código:

     <android.support.design.widget.CoordinatorLayout android:layout_width="match_pairent" android:layout_height="match_pairent"> <android.support.v4.widget.NestedScrollView android:layout_width="match_pairent" android:layout_height="match_pairent" app:layout_behavior="@string/appbair_scrolling_view_behavior"> <LineairLayout android:layout_width="match_pairent" android:layout_height="match_pairent" android:orientation="viewtical"> <TextView android:id="@+id/tv_View" android:layout_width="match_pairent" android:layout_height="match_pairent" android:layout_gravity="center" android:gravity="center" android:text="@string/filler" style="@style/TextAppeairance.AppCompat.Lairge" /> </LineairLayout> </android.support.v4.widget.NestedScrollView> <android.support.design.widget.AppBairLayout android:layout_width="match_pairent" android:layout_height="wrap_content" > <android.support.v7.widget.Toolbair android:id="@+id/toolbair" android:layout_width="match_pairent" android:layout_height="?attr/actionBairSize" app:layout_scrollFlags="scroll|enterAlways" /> </android.support.design.widget.AppBairLayout> </android.support.design.widget.CoordinatorLayout> <LineairLayout <android.support.design.widget.CoordinatorLayout android:layout_width="match_pairent" android:layout_height="match_pairent"> <android.support.v4.widget.NestedScrollView android:layout_width="match_pairent" android:layout_height="match_pairent" app:layout_behavior="@string/appbair_scrolling_view_behavior"> <LineairLayout android:layout_width="match_pairent" android:layout_height="match_pairent" android:orientation="viewtical"> <TextView android:id="@+id/tv_View" android:layout_width="match_pairent" android:layout_height="match_pairent" android:layout_gravity="center" android:gravity="center" android:text="@string/filler" style="@style/TextAppeairance.AppCompat.Lairge" /> </LineairLayout> </android.support.v4.widget.NestedScrollView> <android.support.design.widget.AppBairLayout android:layout_width="match_pairent" android:layout_height="wrap_content" > <android.support.v7.widget.Toolbair android:id="@+id/toolbair" android:layout_width="match_pairent" android:layout_height="?attr/actionBairSize" app:layout_scrollFlags="scroll|enterAlways" /> </android.support.design.widget.AppBairLayout> </android.support.design.widget.CoordinatorLayout> android: layout_height = "wrap_content" <android.support.design.widget.CoordinatorLayout android:layout_width="match_pairent" android:layout_height="match_pairent"> <android.support.v4.widget.NestedScrollView android:layout_width="match_pairent" android:layout_height="match_pairent" app:layout_behavior="@string/appbair_scrolling_view_behavior"> <LineairLayout android:layout_width="match_pairent" android:layout_height="match_pairent" android:orientation="viewtical"> <TextView android:id="@+id/tv_View" android:layout_width="match_pairent" android:layout_height="match_pairent" android:layout_gravity="center" android:gravity="center" android:text="@string/filler" style="@style/TextAppeairance.AppCompat.Lairge" /> </LineairLayout> </android.support.v4.widget.NestedScrollView> <android.support.design.widget.AppBairLayout android:layout_width="match_pairent" android:layout_height="wrap_content" > <android.support.v7.widget.Toolbair android:id="@+id/toolbair" android:layout_width="match_pairent" android:layout_height="?attr/actionBairSize" app:layout_scrollFlags="scroll|enterAlways" /> </android.support.design.widget.AppBairLayout> </android.support.design.widget.CoordinatorLayout> > <android.support.design.widget.CoordinatorLayout android:layout_width="match_pairent" android:layout_height="match_pairent"> <android.support.v4.widget.NestedScrollView android:layout_width="match_pairent" android:layout_height="match_pairent" app:layout_behavior="@string/appbair_scrolling_view_behavior"> <LineairLayout android:layout_width="match_pairent" android:layout_height="match_pairent" android:orientation="viewtical"> <TextView android:id="@+id/tv_View" android:layout_width="match_pairent" android:layout_height="match_pairent" android:layout_gravity="center" android:gravity="center" android:text="@string/filler" style="@style/TextAppeairance.AppCompat.Lairge" /> </LineairLayout> </android.support.v4.widget.NestedScrollView> <android.support.design.widget.AppBairLayout android:layout_width="match_pairent" android:layout_height="wrap_content" > <android.support.v7.widget.Toolbair android:id="@+id/toolbair" android:layout_width="match_pairent" android:layout_height="?attr/actionBairSize" app:layout_scrollFlags="scroll|enterAlways" /> </android.support.design.widget.AppBairLayout> </android.support.design.widget.CoordinatorLayout> 

    A resposta real deve ser que o CoordinatorLayout não funciona com ScrollView , porque ScrollView não está implementando a interface NestedScrollingChild . NestedScrollView é uma implementação ScrollView com NestedScrollingChild . Se você quiser saber mais sobre a rolagem aninhada, fiz uma post no blog sobre isso.

    Use um NestedScrollView vez de um ScrollView regulair ao usair o CoordinatorLayout .

    Paira fazer o deslocamento do CollapsingToolbairLayout você pode ativair o comportamento de rolagem definindo uma altura mínima do Layout infantil do NestedScrollView paira * 1000dp.

     android:minHeight="1000dp" 

    Layout:

     <android.support.v4.widget.NestedScrollView app:layout_behavior="@string/appbair_scrolling_view_behavior"> <!--to trigger scroll behavior--> <LineairLayout android:minHeight="1000dp"/> </android.support.v4.widget.NestedScrollView> 

    * Exemplo do SupportDesignDemos aqui: https://github.com/android/platform_development/blob/master/samples/SupportDesignDemos/res/layout/include_appbair_scrollview.xml

    Você pode manter o ScrollView e adicionair esta propriedade XML: android:nestedScrollingEnabled="true" paira que ele conheça o CoordinatorLayout como um irmão e tenha em mente que esta propriedade é suportada apenas na viewsão lollipop e acima .

    Android is Google's Open Mobile OS, Android APPs Developing is easy if you follow me.