我正在使用以下方法监听视图的布局更改OnGlobalLayoutListener:
view.getViewTreeObserver().addOnGlobalLayoutListener(myListener);
Run Code Online (Sandbox Code Playgroud)
因为只要视图存在,我对这个监听器的事件感兴趣,所以我认为不需要调用removeOnGlobalLayoutListener(myListener).
这会导致内存泄漏还是与视图一起收集的侦听器垃圾?假设侦听器持有对视图的引用.
背景是我想要创建一个可以附加到某些视图的模块,并根据布局更改来完成.如果不需要删除它的创建就像创建一样简单,new FancyModule(theView)然后构造函数负责绑定侦听器.如果需要删除,我必须实现一个我想要防止的析构函数方法.