我有Fragment
并在按钮上添加了ClickListener
:
$.btnAdd.setOnClickListener(new ViewOnClickListenerOnAddButtonClicked());
根据MemoryAnalyzer
,它永远不会被取消分配;当我在Fragment
之间导航和导航时,似乎Fragment
本身只存在一次,但OnClickListener
的数量加起来。
为了测试我添加了一个完全空的:
private static class ViewOnClickListenerOnAddButtonClicked implements View.OnClickListener {
@Override
public void onClick(View v) {
}
}
(这个名字也只是我在MemoryAnalyzer
中找到的)
这是MemoryAnalyzer
的输出:
第一个是Fragment
本身,其数量为1,但ViewOnClickListenerOnAddButtonClicked
似乎现在存在4次(每次导航到它时都会存在一次)。
当空OnClickListener
时,可能是什么原因?