是否可以在RecyclerView的子级中预装WebView中的数据?

我有一个使用LinearLayoutManager的RecyclerView,其中每个子卡包含一个WebView。 我使用loadData()方法将数据加载到WebView中。 当我向下滚动列表时,事情正常工作,但是当我向下滚动到足以让上面的视图被回收时,我会在向上滚动时遇到问题。

当RecyclerView重新挂接上面的子节点时,它会重新加载WebView中的数据,但是直到WebView在屏幕上才会重新加载它。 当WebView加载其数据时,它会将屏幕下方的所有子项推送到屏幕下方。 因此,当我向上滚动时,不是让WebView的底部缓慢显示在屏幕上,而是整个WebView跳转到WebView顶部的屏幕。 它非常刺耳,根本不光滑。

有没有办法告诉适配器或布局管理器提前加载WebViews? 如果RecyclerView顺利滚动,我会对我的应用感到满意,但是现在只要我向后滚动它就几乎无法使用它。

尝试调整WebView的大小以匹配内容大小

也许可以查看一下, Recycler View – 预缓存视图

在组合中,它工作得很好,但我仍在尝试改进滚动。

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

RecyclerView.setItemViewCacheSize(int cacheSize)