【问题标题】:Appbar scrolling in android design library 22.2.1 vs 22.2.0android设计库22.2.1 vs 22.2.0中的Appbar滚动
【发布时间】:2015-07-19 13:47:14
【问题描述】:

我对新的 android 设计库的 appbar 滚动功能有疑问。除了设计库,我还使用支持库 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 个 Recycler 视图(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。所以我放弃了。)

【问题讨论】:

    标签: android scroll android-toolbar android-recyclerview android-appbarlayout


    【解决方案1】:

    Google 回复了我以下内容:

    “RecyclerView 2 和 3 大到可以滚动吗?v22.2.1 将不再滚动视图不需要滚动。” (项目成员 #1 chrisba...@google.com)

    确实,RecyclerView 2 不够大,无法解释问题,但 RecyclerView 3 足够大。但是,从那时起,由于某些原因(可能是 22.1.1 的更新),我的 RecyclerView 3 现在可以正常工作了。

    所以请记住,22.1.1 中有一个设计意图修改(如果我没记错的话,没有记录)“不会滚动不需要滚动的视图”。

    【讨论】:

      猜你喜欢
      • 2016-05-14
      • 1970-01-01
      • 2015-10-19
      • 2015-10-23
      • 2015-11-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-02-08
      相关资源
      最近更新 更多