2015-11-24 1 views
1

Я тестирую библиотеку android.support.design, но у меня есть эта проблема. Сначала посмотрите на фотографии.Панель инструментов Android не скрывается при установке layout_scrollFlags

нажмите на ссылку просмотреть изображение: scroll state image

нажмите на ссылку просмотреть изображение: not scroll state image

Вы можете увидеть его, панель инструментов не скрывает на задней панели статуса bar.My раскладка следовать:

<android.support.design.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android" 
xmlns:app="http://schemas.android.com/apk/res-auto" 
xmlns:tools="http://schemas.android.com/tools" 
android:layout_width="match_parent" 
android:layout_height="match_parent" 
android:fitsSystemWindows="true" 
tools:context=".SettingActivity"> 

<android.support.design.widget.AppBarLayout 
    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" 
     android:fitsSystemWindows="true" 
     app:layout_scrollFlags="scroll|enterAlways" 
     app:popupTheme="@style/ThemeOverlay.AppCompat.Light" /> 

    <android.support.design.widget.TabLayout 
     android:id="@+id/tab_layout" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" /> 
</android.support.design.widget.AppBarLayout> 

<android.support.v7.widget.RecyclerView 
    android:id="@+id/list" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    app:layout_behavior="@string/appbar_scrolling_view_behavior" /> 

<android.support.design.widget.FloatingActionButton 
    android:id="@+id/action_btn" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_gravity="bottom|end" 
    android:layout_margin="10dp" 
    android:src="@android:drawable/ic_dialog_email" /> 
</android.support.design.widget.CoordinatorLayout> 

Может ли кто-нибудь дать мне какое-нибудь предложение?

ответ

0

Попробуйте сделать следующие изменения:

1) Удалить android:fitsSystemWindows="true" от компоновки координатора.

2) Вырезать android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar" из AppBarLayout и вставить его в Toolbar

+0

Я попробовал два шага, но доза не работает. Спасибо за вашу заботу. – user5549139

+0

Я предлагаю вам следовать этому руководству https://mzgreen.github.io/2015/06/23/How-to-hideshow-Toolbar-when-list-is-scrolling%28part3%29/ –

+0

Я решил проблема, пожалуйста, см. мой ответ. Спасибо за помощь ~ – user5549139

4

Наконец, я решить эту проблему. Мой тестовый тестовый проект основывается на настройках по умолчанию для Android Studio IDE. Поэтому я проверяю файл values-v21/styles.xml. Он имеет значение по умолчанию <item name="android:statusBarColor">@android:color/transparent</item>. Он отлично работает после удаления элемента.

0

@ user5549139 У меня была та же проблема. Вы не должны были удалять

<item name="android:statusBarColor">@android:color/transparent</item> 

Это дает вам прозрачный статусBar, который согласован с конструкцией материалов.

Моя проблема заключалась в том, что CordinatorLayout с android:fitsSystemWindows="true" был включен в качестве ребенка в DrawerLayout, который также имел android:fitsSystemWindows="true". Я удалил android:fitsSystemWindows="true" из вложенных (включенных) CoordinatorLayout и скрытая панель инструментов начала работать правильно. Я думаю, вам нужно удалить его с панели инструментов.

Смежные вопросы