Jeszcze większy problem z używaniem CoordinatorLayout i AppBarLayout.CoordinatorLayout/AppBarLayout ExpandableListWyjście renderowane poza ekranem
Próbuję uzyskać podstawową funkcję przewijania ekranu w pasku narzędzi po przewinięciu w dół i powrocie na ekran podczas przewijania w górę.
Jednak moja obecna konfiguracja pokazuje problem: nie tylko pasek narzędzi nie przewija się, ale ListView wydaje się renderować poza ekranem na dole. To prawie tak, jakby została skompensowana przez wysokość AppBarLayout.
Oto gif opisując problem, trzeba pamiętać, że ostateczna pozycja jest odcięta również pasek przewijania jest wyłączony ekran:
Mój układ jest dość standardowy:
<?xml version="1.0" encoding="utf-8"?>
<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"
android:background="@color/background">
<android.support.design.widget.AppBarLayout
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="?android:attr/actionBarSize"
android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar"
android:background="@color/orange"
app:layout_scrollFlags="scroll|enterAlways"/>
</android.support.design.widget.AppBarLayout>
<android.support.v4.widget.SwipeRefreshLayout
android:id="@+id/swipeToRefresh"
android:layout_width="match_parent"
android:layout_height="match_parent"
app:layout_behavior="@string/appbar_scrolling_view_behavior">
<ExpandableListView
android:id="@+id/listView"
android:groupIndicator="@android:color/transparent"
android:layout_width="match_parent"
android:dividerHeight="0px"
android:layout_height="match_parent"/>
</android.support.v4.widget.SwipeRefreshLayout>
</android.support.design.widget.CoordinatorLayout>
Wystarczy popatrzeć na moją odpowiedź na dać mi znać, jeśli to działało – waleedsarwar86