Проблема SlidingUpPanelLayout с видимостью - PullRequest
0 голосов
/ 23 сентября 2019

У меня проблема с SlidingUpPanelLayout.Мой взгляд построен следующим образом:

 <com.sothree.slidinguppanel.SlidingUpPanelLayout xmlns:sothree="http://schemas.android.com/apk/res-auto"
        android:id="@+id/list_sliding_layout"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:gravity="top"
        sothree:umanoDragView="@+id/dragView"
        sothree:umanoOverlay="true"
        sothree:umanoPanelHeight="@dimen/filtering_list_closed_height"
        sothree:umanoShadowHeight="@dimen/app_bar_elevation">

        <androidx.coordinatorlayout.widget.CoordinatorLayout
            android:layout_width="match_parent"
            android:layout_height="match_parent">

            // some views

        </androidx.coordinatorlayout.widget.CoordinatorLayout>

        <FrameLayout
            android:id="@+id/list_filtering_fragment_container"
            android:name="com.example.test.scenes.list.filtering.FilteringFragment"
            android:layout_width="match_parent"
            android:layout_height="match_parent" />

    </com.sothree.slidinguppanel.SlidingUpPanelLayout>

, и он работал, пока я не добавил новую функцию, где я должен установить list_filtering_fragment_container видимость на GONE.Все отлично работает, когда я переключаю статус видимости, но не работает, когда я перехожу к другому фрагменту и возвращаюсь к предыдущему.

РЕДАКТИРОВАТЬ

Это выглядит так:

Нормальное состояние, которого я хочу достичь после установки видимости на VISIBLE

BEFORE

Состояние, которое я имею после установки видимости на VISIBLE(после изменения фрагментов)

enter image description here

также я вижу в инспекторе макетов, что расположение на экране и высота этого элемента различны для обоих случаев.Я пытался использовать slidingUpPanel.setPanelState(PanelState.HIDDEN), но он почему-то не работает в 100% случаев.Похоже, что вид выходит за пределы экрана и не возвращается в правильное положение.И вопрос в том, почему он так себя ведет?

...