web-dev-qa-db-ja.com

CoordinatorLayoutは、スクロール後に下部に空のスペースを残します

CoordinatorLayoutを使用してGoogleの最新のデザイントリックを実装しようとしていますが、スクロールと視差効果に問題があります。

アクティビティが表示された後、すべて問題ないように見えますが、スクロールしようとすると問題が発生します。下部のビューが正しく展開されていないようで、上にスクロールすると、下に空のスペースが表示されます。底面図は、上面図とナビゲーションバーの間の最初の表示でどれだけ大きいかだけが大きいようです。

これは次のようになります。

enter image description here

関連コード:

<FrameLayout 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">

<CoordinatorLayout
    Android:layout_height="match_parent"
    Android:layout_width="match_parent">

    <AppBarLayout
        Android:layout_width="match_parent"
        Android:layout_height="wrap_content">

        <CollapsingToolbarLayout
            Android:layout_width="match_parent"
            Android:layout_height="match_parent"
            app:layout_scrollFlags="scroll|exitUntilCollapsed"
            app:expandedTitleMarginStart="72dp"
            app:expandedTitleMarginEnd="16dp">

            <ImageView
                Android:layout_width="match_parent"
                Android:layout_height="wrap_content"
                app:layout_collapseMode="parallax"/>
        </CollapsingToolbarLayout>
    </AppBarLayout>

    <ViewPager
        Android:layout_width="match_parent"
        Android:layout_height="match_parent"
        app:layout_behavior="@string/appbar_scrolling_view_behavior"/>

</CoordinatorLayout>
</FrameLayout>

この奇妙な動作はランダムに発生します。下部ビューは通常どおりスクロール可能で、その空きスペースが表示されない場合があります。私は何が間違っているのですか?ありがとう。

19
user4386126

私は同じ問題を抱えていましたが、この問題のあるすべてのレイアウトに

Android:fitsSystemWindows="true"

coordinatorLayoutで

それを削除すると、どこでも私の問題が修正されました。

14
Apperside

ToolbarをあなたのCollapsingToolbarLayout内に追加してみてください。

 <Android.support.design.widget.CollapsingToolbarLayout>

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

また、追加してみてください

Android:minHeight = "?attr/actionBarSize"

ToolbarCollapsingToolbarLayoutおよびAppBarLayout

1
mohax

ナビゲーションフラグの理由で、Android:fitsSystemWindows = "true"は私のニーズを満たしていませんでした。

少し遊んだ後、0dphieghtで別のCollapsingToolbarLayoutを追加するとうまくいくことがわかりました。

<Android.support.design.widget.CollapsingToolbarLayout
    Android:layout_width="match_parent"
    Android:layout_height="0dp"
    app:layout_scrollFlags="scroll|snap" />
0
asaf gitai