RecyclerView的子项中的WebViews中的数据可以预加载吗?

我有一个使用LinearLayoutManager的RecyclerView,其中每个子卡都包含一个WebView。 我使用loadData()方法将数据加载到WebView中。 当我向下滚动列表时,情况正常,但是当我向下滚动到足以使上述视图得到回收时,当我向后滚动时会出现问题。

当RecyclerView重新连接上面的子节点时,它会重新加载WebView中的数据,但直到WebView出现在屏幕上时才会重新加载数据。 当WebView加载它的数据时,它会将其下面的所有孩子推下屏幕。 因此,当我向上滚动时,WebView底部缓慢地出现在屏幕上,而不是整个WebView跳到WebView顶部的屏幕上。 这是非常刺耳的,不光滑的。

有没有办法告诉适配器或布局pipe理器提前加载WebViews? 如果RecyclerView能够顺利滚动,我会对自己的应用程序感到满意,但是现在,当我向后滚动时,它几乎不可用。

  • 用户按下后,Android WebView不会停止
  • setJavaScriptEnabled的替代解决方案(true);
  • 拉到刷新WebView
  • Android:在webview中调试javascript的问题
  • 如何在Fragment中的WebView中添加“Go Back”function?
  • 透明WebView无法在Android v4.0上运行
  • 在WebView中隐藏滚动条
  • 处理Android Webview中的证书错误并清除证书参数
  • 尝试调整WebView的大小以匹配内容大小

    也可能要看看, Recycler View – 预caching视图

    在组合它工作相当不错,但我仍然试图改善滚动。

    我知道这是一个古老的问题,但在研究另一个答案的时候偶然发现了这个问题。 尝试将项目视图caching大小设置得更高。

    RecyclerView.setItemViewCacheSize(int cacheSize)