25

これはバグだと確信しているので、回避策を求めています。私のレイアウトは次のようなものです:

<CoordinatorLayout>

    <AppBarLayout>
        <CollapsingToolbarLayout>
            <ImageView/>
            <Toolbar/>
        </CollapsingToolbarLayout>
    </AppBarLayout>

    <android.support.v4.widget.NestedScrollView/> <!-- content here -->

</CoordinatorLayout>

Web からコンテンツを取得していますが、その高さがどれくらいになるかわかりません。行数が少ない場合もあれば、非常に長い場合もあります。ただし、CollapsingToolbarコンテンツが画面全体をカバーするほど大きくない場合、うまく機能しないことがわかりました。ケース:

  • content.height > screen.height: 動作します; 上下にスワイプすると、ツールバーが展開および折りたたまれ、コンテンツがスクロールされます。

  • content.height < screen.height:しません。ほとんどの場合、それは良くありません(content.height + expandedToolbar.height) > screen.height

つまり、コンテンツの高さが十分でない場合、 content+expandedToolbar が画面全体よりもはるかに高かったとしても、スクロール ジェスチャに反応せず、いくつかのバグが表示されます。ツールバーを少し折りたたむのに 10 回のジェスチャが必要になる場合があります。そのため、ツールバーが展開されているために下部に隠れているコンテンツの下部にほとんど到達できません。

回避策はありますか?

試してみたい場合は、チーズスクエアNestedScrollViewサンプル プロジェクトを取得して、activity_detail.xml [API17 はこちら]内のコンテンツを削除 (または縮小) します。

4

1 に答える 1