Ответ 1
добавьте это в свой Recyclerview:
app:layout_behavior="@string/appbar_scrolling_view_behavior"
Я создавал настройку/компоновку настроек для своего приложения. У меня есть CoordinatorLayout
с AppBarLayout
и Toolbar
, а затем ниже content_settings.xml
. Когда содержимое загружает XML файл за панель приложений.
Я использую эту же настройку для загрузки основного контента, и он отлично работает, но по какой-то причине неправильно отображается в разделе "Настройки".
activity_settings.xml
<android.support.design.widget.AppBarLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:theme="@style/AppTheme.AppBarOverlay">
<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/AppTheme.PopupOverlay" />
</android.support.design.widget.AppBarLayout>
<include layout="@layout/content_setting" />
Content_settings.xml - это всего лишь FrameLayout
, который заменяется на PreferenceFragment
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:id="@+id/settings_container"
android:layout_width="match_parent"
android:layout_height="match_parent" />
добавьте это в свой Recyclerview:
app:layout_behavior="@string/appbar_scrolling_view_behavior"
В моем случае представление под панелью инструментов не было прокручиваемым, поэтому, несмотря на то, что принятый ответ остановил перекрытие, он подтолкнул содержимое вниз по высоте панели инструментов, нажав элементы за кадром. Решением в этом случае было также удаление
app:layout_scrollFlags
с панели инструментов, в которую я включал/делился с другими макетами, в которых были прокрутки.