Панель действий с макетом координатора не привязывается к полному скрытию или полному раскрытию при частичном изменении Android

Я использовал макет координатора, чтобы получить панель, сворачивающую панель действий.
Теперь моя проблема заключается в том, что я прокручиваю достаточно мало, чтобы частично скрыть панель действий, ниже остается там.
Что я хочу, так это то, что даже если я частично оставлю это скрытым; она (панель ниже с несколькими кнопками) должна сливаться с панелью действий.(Аналогично Whatsapp)
Мой код:

<android.support.design.widget.CoordinatorLayout
            android:layout_width="match_parent"
            android:layout_height="match_parent">

            <include
                android:id="@+id/app_bar_layout"
                layout="@layout/pmp_toolbar_2" />

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

        </android.support.design.widget.CoordinatorLayout>

Панель действий при небольшой прокрутке выглядит так:
введите здесь описание изображения

И мой файл build.gradle

compile 'com.android.support:recyclerview-v7:23.0.1'
compile 'com.android.support:cardview-v7:23.0.1'
compile 'com.android.support:design:23.0.1'

ОБНОВЛЕНИЕ: см. комментарий abhishek; эта проблема решена в обновлении библиотеки


person AnswerDroid    schedule 15.09.2015    source источник
comment
Что вы имеете в виду под слиянием? Если вы хотите, чтобы он исчез, используйте полноэкранный режим. В противном случае оставьте его там и не делайте панель действий прокручиваемой.   -  person mrek    schedule 15.09.2015
comment
@mrek на самом деле то, что панель, которую вы видите ниже (со значками), сворачивается с панелью действий   -  person AnswerDroid    schedule 15.09.2015
comment
Извините, но я не понимаю, что именно вы имеете в виду.   -  person mrek    schedule 15.09.2015
comment
@mrek проблема в том, что я хочу, чтобы панель действий работала точно так же, как в WhatsApp. Вы пытаетесь покинуть панель действий на этом этапе в WhatsApp; это не останется. Он будет либо двигаться вверх, либо двигаться вниз   -  person AnswerDroid    schedule 16.09.2015
comment
как вы думаете, это поведение? Я думаю, это из-за ветки include, которая переопределяет обычное поведение. Проверьте этот учебник выше - это может быть полезно.   -  person mrek    schedule 16.09.2015
comment
@mrek проблема такая же, как и в первом комментарии по предоставленной вами ссылке.   -  person AnswerDroid    schedule 16.09.2015
comment
@AnswerDroid У меня может быть для вас обходной путь. Пожалуйста, смотрите мой ответ.   -  person Vicky Chijwani    schedule 04.10.2015
comment
Эта функция была добавлена ​​в 23.1.0 версию библиотеки поддержки. stackoverflow.com/questions/31839173/   -  person Abhishek V    schedule 16.10.2015


Ответы (3)


Это известная проблема с Toolbar в библиотеке поддержки дизайна Android. Он помечен как «FutureRelease» в системе отслеживания проблем Android с 9 сентября, что означает, что исправление должно быть выпущено в ближайшее время. Обратите внимание, что исправление еще не выпущено.

EDIT: если вы действительно хотите исправить это самостоятельно сейчас, в этом другом вопросе есть обходной путь: https://stackoverflow.com/a/32089807/504611 (нашел эту ссылку в самом отчете об ошибке).

ПОСЛЕДНИЕ ИЗМЕНЕНИЯ (РЕШЕНО): это исправлено в библиотеке поддержки версии 23.1.0. См. Как сделать панель инструментов видимой или скрытой при использовании Google Design Library?

person Vicky Chijwani    schedule 04.10.2015
comment
Спасибо за понимание самой проблемы в первую очередь - person AnswerDroid; 05.10.2015
comment
В следующий раз, когда кто-то скажет, что это ошибка, попросите ссылку на отчет об ошибке Android, вы обычно можете найти обходные пути, опубликованные другими людьми там :) - person Vicky Chijwani; 05.10.2015

Я использую следующий макет для достижения эффекта прокрутки, такого как WhatsApp

<?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:id="@+id/main_content"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

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

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

    </android.support.design.widget.AppBarLayout>

    <android.support.v4.view.ViewPager
        android:id="@+id/viewpager"
        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/fab"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="end|bottom"
        android:layout_margin="@dimen/fab_margin"
        android:src="@drawable/ic_done" />

</android.support.design.widget.CoordinatorLayout>
person ch3tanz    schedule 30.09.2015
comment
Я сделал подобное, но я проверю и посмотрю, работает ли оно - person AnswerDroid; 30.09.2015
comment
Я думаю, вы неправильно поняли мой вопрос, я думаю. У меня нет проблем с получением этого макета - проблема в том, что я не могу получить этот эффект привязки. - person AnswerDroid; 01.10.2015
comment
@AnswerDroid, какого эффекта привязки вы хотите добиться ?? - person ch3tanz; 01.10.2015
comment
просто попробуйте немного прокрутить экран WhatsApp с вкладками ... если вы оставите его, он либо полностью сольется с панелью инструментов, либо не сольется вообще. вы не сможете получить представление (как показано на изображении выше), если вы прекратите прокрутку. Это эффект привязки, о котором я говорю. - person AnswerDroid; 01.10.2015
comment
Хорошо, я понял твою точку зрения. Он не останавливается на том месте, где вы оставили прокрутку. Позвольте мне проверить код еще раз. - person ch3tanz; 01.10.2015

Попробуй это:

<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.design.widget.AppBarLayout
        android:id="@+id/appBar"
        android:layout_width="match_parent"
        android:layout_height="192dp"
        android:fitsSystemWindows="true">

        <android.support.design.widget.CollapsingToolbarLayout
            android:id="@+id/collapseToolbar"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:fitsSystemWindows="true"
            app:contentScrim="?attr/colorPrimary"
            app:expandedTitleMarginEnd="80dp"
            app:expandedTitleMarginStart="30dp"
            app:layout_scrollFlags="scroll|exitUntilCollapsed"
            app:title="Custom Layout">

            <ImageView
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:fitsSystemWindows="true"
                android:scaleType="fitXY"
                android:src="@drawable/bridge"
                app:layout_collapseMode="pin"
                app:layout_collapseParallaxMultiplier="1.5"/>


            <android.support.v7.widget.Toolbar
                android:id="@+id/toolbar"
                android:layout_width="match_parent"
                android:layout_height="?android:attr/actionBarSize"
                app:layout_collapseMode="pin"/>

        </android.support.design.widget.CollapsingToolbarLayout>

    </android.support.design.widget.AppBarLayout>
    <android.support.design.widget.FloatingActionButton
        android:id="@+id/fab"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        app:backgroundTint="@android:color/holo_blue_dark"
        app:elevation="10dp"
        android:translationZ="10dp"
        android:layout_marginRight="20dp"
        app:layout_anchor="@+id/appBar"
        app:layout_anchorGravity="bottom|right|end"
        app:borderWidth="0dp"
        android:visibility="gone"
        android:src="@drawable/plus" />
    <android.support.v7.widget.RecyclerView
        android:id="@+id/uid"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        app:layout_behavior="@string/appbar_scrolling_view_behavior" />
</android.support.design.widget.CoordinatorLayout>
person Aakash    schedule 30.09.2015
comment
У меня нет проблем с получением этого макета - проблема в том, что я не могу получить этот эффект привязки - person AnswerDroid; 01.10.2015
comment
просто попробуйте немного прокрутить экран WhatsApp с вкладками ... если вы оставите его, он либо полностью сольется с панелью инструментов, либо не сольется вообще. вы не сможете получить представление (как показано на изображении выше), если остановите прокрутку. я чист? - person AnswerDroid; 01.10.2015