RecyclerView 自动滚动到 WebView/Fresco SimpleDraweeView 项

Posted

技术标签:

【中文标题】RecyclerView 自动滚动到 WebView/Fresco SimpleDraweeView 项【英文标题】:RecyclerView automatically scrolls to WebView/Fresco SimpleDraweeView item 【发布时间】:2016-07-03 12:32:00 【问题描述】:

当我放置具有可扩展高度的异步加载内容的项目时,例如 WebView 或 Fresco 的 SimpleDraweeView,视图有时会滚动到该项目(例如,如果它只是在屏幕上部分可见,它会在项目加载后滚动到该项目)。有人遇到过这个问题吗?

【问题讨论】:

我正在经历这件事,真的很烦人,我有广告(在 Webview 中显示),它会强制 RecyclerView 滚动显示广告,你找到任何解决方案了吗?跨度> @Shehabix 我还没有找到解决方案。我放弃了 WebView 的想法,广告只是简单的图像,显​​示在 SimpleDraweeView 中。但是我提前知道广告的确切宽度和高度,所以当我在加载图像之前设置纵横比时,问题不存在。我已经向 Google 提出了这个问题,但他们似乎没有承认这一点。 我发现这个问题只影响某些版本的支持库。例如 23.4.0 不受影响,而 23.3 和 24.0.0 受影响 有人在这里想出了答案:***.com/questions/37909408/… 【参考方案1】:

android:descendantFocusability="beforeDescendants" 放入您的布局 XML 中。这将防止滚动到异步加载的内容。

<android.support.v7.widget.RecyclerView
            android:id="@+id/my_list"
            android:layout_
            android:layout_
            android:descendantFocusability="beforeDescendants" />

【讨论】:

我知道我们不应该添加 cmets 只是为了表示感谢,但在这种情况下我必须这样做。谢谢!

以上是关于RecyclerView 自动滚动到 WebView/Fresco SimpleDraweeView 项的主要内容,如果未能解决你的问题,请参考以下文章

插入数据时Recyclerview自动向上滚动

recyclerview 中的 Diffutil,如果添加了新项目,则使其自动滚动

ScrollView(RecyclerView等)为什么会自动滚动原理分析,还有阻止自动滑动的解决方

ScrollView(RecyclerView等)为什么会自动滚动原理分析,还有阻止自动滑动的解决方案

RecyclerView更新时如何自动向下滚动

在键盘打开时将项目添加到 RecyclerView 时向下滚动