内部使用时,我将使用RecyclerView
(水平布局)在另一个RecyclerView
(垂直布局)内部使用时,何时清除来自内部RecyclerView的听众。一切正常。现在我想添加RecyclerView.OnScrollListener
听众到内部RecyclerView
。当在另一个RecyclerView(外部)
我正在向适配器回调的onViewAttachedToWindow
的内部RecyclerView添加一个侦听器,并在onViewDetachedFromWindow
上清除它。它工作正常。但是如果我从片段中返回,我没有收到onViewDetachedFromWindow
的任何回叫,因此听众仍然将添加到内部RecyclerView
s。
现在我的问题是:
- 威尔片段的
onDestroyView
结果从清除了所有的听众的内心RecyclerView
S' - 由于我在外部
RecyclerView
的ViewHolder
内部创建了侦听器的实例,它的碎片被破坏时它也会自动销毁吗?
如果没有以上会发生,我应该如何清除这些听众,因为这可能会导致内存泄漏的听众举办RecyclerView
的参考?
这看起来很有前途,将检查和更新。谢谢 –
感谢Niko的回答。但是在doc中提到的解决方案存在一个问题**请注意,如果RecyclerView恢复,设置此标志将导致性能下降。**我找到了另一个解决方法。无论如何,upvoting你的答案。 :) –
@RohitArya是的,实际上这种方式只建议使用自己的RecyclerView Pool,很高兴您找到了解决方案! :) –