如果我添加相同的侦听器对象
private ValueEventListener dataChangedListener = new ValueEventListener() ...
mQery.addValueEventListener(dataChangedListener);
mQery.addValueEventListener(dataChangedListener);
就像我添加一次一样?如果我想删除它,我应该致电
mQery.removeEventListener(dataChangedListener);
或不?
答案 0 :(得分:1)
不,它不会是一样的。如果您有多个引用都指向Firebase数据库中的完全相同的位置,并且您有所有这些引用的侦听器,那么对该位置的数据的任何更改都将触发所有侦听器。
如果您不希望侦听器触发更改,请将其从首先添加它的引用中删除。据我所知,没有办法有条件地指出应该根据其他条件触发一个监听器 - 你只需添加和删除它们。
答案 1 :(得分:1)