AppBarLayout - макет иногда невидим после входа в представление (даже если он не введен)
У меня есть проблема, когда иногда AppBarLayout не будет показывать весь свой контент все время, когда вы играете с ним:
<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.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:orientation="vertical"
android:layout_height="148dp"
android:layout_width="match_parent">
<android.support.design.widget.TabLayout
app:layout_scrollFlags="scroll|enterAlways"
android:layout_height="48dp"
android:background="@color/primarycolor"
.../>
<RelativeLayout
app:layout_scrollFlags="scroll|enterAlways"
android:background="@color/white"
android:layout_height="100dp"
...>
</RelativeLayout>
</android.support.design.widget.AppBarLayout>
</android.support.design.widget.CoordinatorLayout>
Решение предоставляется
Панель инструментов CoordinatorLayout невидима при входе до полной высоты
НО: он обеспечивает полную линию, которая не совпадает с основным цветом, который я указал в нижнем макете, потому что его фон белый. Мысли?
1 ответ
Решение
Это решение, расширяющее приведенное выше: используйте его вместо предоставленного, что позволит смешать appbarlayout и тонкое возвышение тени под ним.
<View
android:id="@+id/appbar_bottom"
android:layout_width="match_parent"
android:layout_height=".3dp"
android:background="#606060"
android:visibility="visible"/>
и результирующий макет:
<android.support.design.widget.AppBarLayout
android:orientation="vertical"
android:layout_height="148.3dp"
android:layout_width="match_parent">
<android.support.design.widget.TabLayout
app:layout_scrollFlags="scroll|enterAlways"
android:layout_height="48dp"
android:background="@color/primarycolor"
.../>
<RelativeLayout
app:layout_scrollFlags="scroll|enterAlways"
android:background="@color/white"
android:layout_height="100dp"
...>
</RelativeLayout>
<View
android:id="@+id/appbar_bottom"
android:layout_width="match_parent"
android:layout_height=".3dp"
android:background="#606060"
android:visibility="visible"/>
</android.support.design.widget.AppBarLayout>