Android 如何使用Firebase RecycleView添加搜索字段
请帮助我解决问题,我想添加搜索栏 帮助我解决我的问题我想添加搜索栏当我在编辑文本中添加内容时,它将过滤Android 如何使用Firebase RecycleView添加搜索字段,android,firebase,firebase-realtime-database,firebaseui,Android,Firebase,Firebase Realtime Database,Firebaseui,请帮助我解决问题,我想添加搜索栏 帮助我解决我的问题我想添加搜索栏当我在编辑文本中添加内容时,它将过滤回收视图。仅显示我正在使用的用户搜索内容FirebaseRecycleAdapter,不知道如何使用此适配器筛选内容 protected void onStart() { super.onStart(); FirebaseRecyclerAdapter<Blog, BlogViewHolder> firebaseRecycleAdapter= new FirebaseR
回收视图
。仅显示我正在使用的用户搜索内容FirebaseRecycleAdapter
,不知道如何使用此适配器筛选内容
protected void onStart() {
super.onStart();
FirebaseRecyclerAdapter<Blog, BlogViewHolder> firebaseRecycleAdapter=
new FirebaseRecyclerAdapter<Blog, BlogViewHolder>(
# here i am using blog class for get just content from firebase
Blog.class,
R.layout.blog_list,
BlogViewHolder.class,
# mdatabase is FirebaseRefrence.
mdatabase
) {
@Override
protected void populateViewHolder(final BlogViewHolder viewHolder,
final Blog model, int position) {
viewHolder.setBranchname(model.getBranchname());
viewHolder.setResultlink(model.getResultlink());
final String searchContent = searchbar.getText().toString();
searchbar.addTextChangedListener(new TextWatcher() {
@Override
public void beforeTextChanged(CharSequence s, int start, int
count, int after) {
}
@Override
public void onTextChanged(CharSequence s, int start, int
before, int count) {
#something write there i donot know what to right
}
@Override
public void afterTextChanged(Editable s) {
}
});
}
};
# Linear Layout Manager is used to set Content in particular order and
# this help to set update post visible on first position
final LinearLayoutManager mLinearLayoutManager = new
LinearLayoutManager(this);
mLinearLayoutManager.canScrollVertically();
mLinearLayoutManager.setReverseLayout(true);
mLinearLayoutManager.setStackFromEnd(true);
mbloglist.setLayoutManager(mLinearLayoutManager);
firebaseRecycleAdapter.registerAdapterDataObserver(new
RecyclerView.AdapterDataObserver() {
@Override
public void onItemRangeInserted(int positionStart, int itemCount) {
super.onItemRangeInserted(positionStart, itemCount);
// int friendlyMessageCount =
firebaseRecyclerAdapter.getItemCount();
// If the recycler view is initially being loaded or the
// user is at the bottom of the list, scroll to the bottom
// of the list to show the newly added message.\
mLinearLayoutManager.scrollToPosition(positionStart);
}
});
mbloglist.setAdapter(firebaseRecycleAdapter);
}
受保护的void onStart(){
super.onStart();
FirebaseRecyclerAdapter FirebaseRecycledAdapter=
新型FirebaseRecyclerAdapter(
#这里我使用blog类从firebase获取内容
Blog.class,
R.layout.blog_列表,
BlogViewHolder.class,
#mdatabase是FirebaseReference。
mdatabase
) {
@凌驾
受保护的void populateViewHolder(最终BlogViewHolder),
最终博客模型,int位置){
setBranchname(model.getBranchname());
setResultlink(model.getResultlink());
最终字符串searchContent=searchbar.getText().toString();
addTextChangedListener(新的TextWatcher(){
@凌驾
更改前的公共无效(字符序列,int start,int
计数,整数后){
}
@凌驾
public void onTextChanged(字符序列,int start,int
前,整数计数){
#我不知道该怎么做才好
}
@凌驾
公共无效后文本已更改(可编辑){
}
});
}
};
#线性布局管理器用于按特定顺序和顺序设置内容
#这有助于将更新帖子设置为在第一个位置可见
最终线性布局管理器mLinearLayoutManager=新建
直线布局经理(本公司);
mLinearLayoutManager.canScrollVertical();
mLinearLayoutManager.setReverseLayout(true);
mLinearLayoutManager.setStackFromEnd(true);
mbloglist.setLayoutManager(mLinearLayoutManager);
firebaseRecycleAdapter.registerAdapterDataObserver(新
RecyclerView.AdapterDataObserver()的{
@凌驾
已插入的公用项目(int positionStart、int itemCount){
super.emrangeinserted(positionStart,itemCount);
//int friendlyMessageCount=
firebaseRecyclerAdapter.getItemCount();
//如果最初正在加载回收器视图,或
//用户位于列表底部,滚动至底部
//显示新添加消息的列表的\
mLinearLayoutManager.scrollToPosition(位置开始);
}
});
mbloglist.setAdapter(firebaseRecycleAdapter);
}
尝试阅读官方文档。方法startAt()
,endAt()
,limitToFirst()
,limitToLast()
,orderByChild()
将对您有所帮助。链接:你的提示足以解决我的问题谢谢