如何知道 FirebaseRecyclerAdapter 的 itemCount 与之前的计数相比是增加了还是减少了?
How to know if a FirebaseRecyclerAdapter's itemCount has increased or decreased compared to previous count?
我在我的应用程序中使用 FirebaseUI 的 FirebaseRecyclerAdapter
。
这是我的代码:
mRecyclerViewAdapter = new FirebaseRecyclerAdapter<AModelClass, AModelClass.ViewHolder>(
AModelClass.class, R.layout.a_player_layout, APlayersModelClass.ViewHolder.class, lastFifty) {
@Override
protected void populateViewHolder(AModelClass.ViewHolder viewHolder, AsModelClass model, int position) {
}
};
aList.setAdapter(mRecyclerViewAdapter);
我想在适配器的数量减少时做一些操作,但我不知道我怎么知道的。有什么办法吗?
我试过谷歌搜索,但还没有得到任何有用的信息。
您可以像这样添加 AdapterDataObserver:
mRecyclerViewAdapter.registerAdapterDataObserver(new RecyclerView.AdapterDataObserver() {
@Override
public void onItemRangeRemoved(int positionStart, int itemCount) {
super.onItemRangeRemoved(positionStart, itemCount);
//Do something here...
}
@Override
public void onItemRangeInserted(int positionStart, int itemCount) {
super.onItemRangeInserted(positionStart, itemCount);
}
@Override
public void onItemRangeChanged(int positionStart, int itemCount) {
super.onItemRangeChanged(positionStart, itemCount);
}
});
我在我的应用程序中使用 FirebaseUI 的 FirebaseRecyclerAdapter
。
这是我的代码:
mRecyclerViewAdapter = new FirebaseRecyclerAdapter<AModelClass, AModelClass.ViewHolder>(
AModelClass.class, R.layout.a_player_layout, APlayersModelClass.ViewHolder.class, lastFifty) {
@Override
protected void populateViewHolder(AModelClass.ViewHolder viewHolder, AsModelClass model, int position) {
}
};
aList.setAdapter(mRecyclerViewAdapter);
我想在适配器的数量减少时做一些操作,但我不知道我怎么知道的。有什么办法吗?
我试过谷歌搜索,但还没有得到任何有用的信息。
您可以像这样添加 AdapterDataObserver:
mRecyclerViewAdapter.registerAdapterDataObserver(new RecyclerView.AdapterDataObserver() {
@Override
public void onItemRangeRemoved(int positionStart, int itemCount) {
super.onItemRangeRemoved(positionStart, itemCount);
//Do something here...
}
@Override
public void onItemRangeInserted(int positionStart, int itemCount) {
super.onItemRangeInserted(positionStart, itemCount);
}
@Override
public void onItemRangeChanged(int positionStart, int itemCount) {
super.onItemRangeChanged(positionStart, itemCount);
}
});