3

新しい Android デザイン ライブラリのアプリバー スクロール機能に問題があります。デザイン ライブラリのほかに、サポート ライブラリ 22.2.1 (AppCompat、Recycler ビューなど) を使用します。

ツールバーがあります

app:layout_scrollFlags="scroll|enterAlways"

属性と ViewPager :

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

2タブ付き。Tab1 には Recyclerview1 が含まれています。Tab2 には、2 つの Recyclers ビュー (Recyclerview2 および Recyclerview3) とその他のビューを含む linearLayout が含まれています。

com.android.support:design:22.2.0 を使用すると、すべて正常に動作します。つまり、Recyclerview1、Recyclerview2、または Recyclerview3 で垂直方向にスクロールすると、ツールバーが自動的にスクロールされます。

したがって、Recyclerview2 と Recyclerview3 が tab2 にネストされており、tab2 の直接の兄弟ではないという事実は、ツールバーのスクロール動作には影響しません。まさに私が必要とするもの。

残念ながら、ライブラリの新しいリリース com.android.support:design:22.2.1 では、この動作が壊れています。22.2.1 リリースでは、Recyclerview1 のみがツールバーをスクロールします。ネストされた Recyclerview2 と Recyclerview3 はもうありません。

この場合、このライブラリは正確に何をすることになっていますか? 22.2.1 の新しいバグですか、それとも 22.2.1 で修正された 22.2.0 のバグですか?

(また、tab2 のすべてのビューを NestedScrollView に入れようとしましたが、tab2 の高さが 50 または 60 dp に変更されたことに注意してください。そのため、あきらめました。)

4

1 に答える 1

0

Googleは私に次のように答えました:

「RecyclerView 2 と 3 はスクロールするのに十分な大きさですか? v22.2.1 ではスクロールしなくなります。ビューをスクロールする必要はありません。」(プロジェクト メンバー #1 chrisba...@google.com)

実際、RecyclerView 2 は十分な大きさではなく、問題を説明しましたが、RecyclerView 3 は十分な大きさでした。ただし、それ以来、何らかの理由 (おそらく 22.1.1 の更新) により、私の RecyclerView 3 は期待どおりに動作するようになりました。

したがって、22.1.1 には「スクロールする必要のないビューをスクロールしない」という設計意図の変更があることを覚えておいてください (私が間違っていなければ文書化されていません)。

于 2015-08-11T10:25:14.263 に答える