从FireChat应用程序中获取参考我在我的应用程序中使用了FirebaseRecyclerAdapter,它工作正常,但我需要过滤等于特定用户ID的数据。
在populateView中,如果我这样做,数据会被过滤,但也会创建一个空白的回收商项目项。
mFirebaseAdapter = new FirebaseRecyclerAdapter<Tags, TagsViewHolder>(
Tags.class,
R.layout.item_message,
TagsViewHolder.class,
mFirebaseDatabaseReference.child("tags")) {
@Override
protected void populateViewHolder(TagsViewHolder viewHolder, Tags tags, int position) {
mProgressBar.setVisibility(ProgressBar.INVISIBLE);
if((tags.getUserid()).equals(mFirebaseUser.getUid()))
viewHolder.tagTextView.setText(tags.getTagname());
}
};
在创建视图之前,我有什么方法可以过滤它吗?
我的POJO课程是:
public class Tags {
private String userid;
private String tagname;
private HashMap<String, Object> timestampCreated;
public Tags() {
}
public Tags(String userid, String tagname, HashMap<String, Object> timestampCreated) {
this.userid = userid;
this.tagname = tagname;
this.timestampCreated = timestampCreated;
}
public String getUserid() {
return userid;
}
public String getTagname() {
return tagname;
}
public HashMap<String, Object> getTimestampCreated() {
return timestampCreated;
}
}
谢谢!
答案 0 :(得分:2)
客户端过滤是FirebaseUI的开放功能请求。请参阅https://github.com/firebase/FirebaseUI-Android/issues/15。
客户端数据过滤,意味着应用程序首先下载数据,然后不向用户显示。这很浪费,如果您的应用只下载显示给他们的数据,大多数移动应用用户会很感激。
处理显示数据子集的最佳方法是以某种方式对数据建模,以便您可以直接访问要显示的数据子集,或使用Firebase queries to limit the data that is retrieved。< / p>