我剛開始學習Firebase和Android。我想在列表視圖中創建一個搜索視圖顯示數據並過濾來自Firebase的數據(例如Instagram搜索部分)我已經閱讀了一些文檔和其他一些問題,但我仍然不知道如何執行並啓動它。任何人都可以給我一些建議嗎?我需要做什麼?我應該從哪裏開始?我應該使用Firebaseui嗎?有什麼我能看的例子嗎?Firebase Android搜索查看
0
A
回答
0
您的代碼顯示請按照下列步驟操作:
- 檢索一個數組或列表從數據庫中存儲數據。
- 將自定義列表適配器設置爲實現Filterable的列表。
- 觸發時,用戶類型在搜索框中
是在活動中獲取用戶的列表和設置過濾器的例子過濾器:
private List<User> usersList;
private MyListAdapter adapter;
private Listview listview;
private DatabaseReference mDatabase;
mDatabase = FirebaseDatabase.getInstance().getReference();
mDatabase.child("users").addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
usersList = new ArrayList<>();
for (DataSnapshot eventSnapshot : dataSnapshot.getChildren()) {
usersList.add(eventSnapshot.getValue(User.class);
}
adapter = new MyListAdapter(context, usersList);
listview = (Listview) findViewById(R.id.mylistview);
listview.setAdapter(adapter);
}
@Override
public void onCancelled(DatabaseError databaseError) {
}
});
searchButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
FilterNow();
}
});
}
private void FilterNow() {
String text = editText.getText().toString().toLowerCase().trim();
if (TextUtils.isEmpty(editText.getText())){
Toast.makeText(getContext(),"searchbox is empty!", Toast.LENGTH_SHORT).show();
}else {
adapter.getFilter().filter(text);
friends.setAdapter(adapter);
}
}
接下來,你應該看看了如何使列表適配器實現可過濾。 祝你好運!
0
創建新方法「firebaseUserSearch」 複製您的RecyclerView適配器並粘貼到裏面。使用你的databaseReference來過濾它。
我的FB結構爲:
BLABLA:
Bars:
01:
BarName: "Best bar"
02:
BarName: "The Worst bar"
和代碼是在這裏:
....
databaseReference = FirebaseDatabase.getInstance().getReference ("Bars");
.....
searchView.setOnQueryTextListener(new SearchView.OnQueryTextListener() {
@Override
public boolean onQueryTextSubmit(String searchText) {
// TODO Auto-generated method stub
return false;
}
@Override
public boolean onQueryTextChange(String searchText) {
searchText = searchView.getQuery().toString();
firebaseUserSearch (searchText);
return true;
}
});
return true;
}
private void firebaseUserSearch (final String searchText) {
firebaseRecyclerAdapter = new FirebaseRecyclerAdapter <Bar, ViewHolder>(
Bar.class,
R.layout.custom_row,
ViewHolder.class,
databaseReference.orderByChild("barName").startAt(searchText.toUpperCase()).endAt(searchText + "\uf8ff"))
{
@Override
protected void populateViewHolder(ViewHolder viewHolder, Bar model, final int position) {
....
相關問題
- 1. 的Android ActionbarSherlock搜索查看
- 2. Android - Firebase RecyclerView搜索
- 3. Android搜索查看Firebase RecyclerView未顯示數據
- 4. Android搜索可檢查列表查看
- 5. Android搜索查看無法使用
- 6. Android搜索Expandable列表查看
- 7. 樣式搜索在Android上查看(min21)
- 8. 與Android搜索查看在回收站
- 9. 的Android搜索查看不工作()
- 10. 搜索查看在片段的Android
- 11. Android的搜索查看的onclick
- 12. 如何實現搜索查看Android中
- 13. Android操作欄,與搜索查看
- 14. Xamarin Android搜索Recycler查看項目
- 15. Android小工具搜索查看OnQueryTextListener
- 16. Android的搜索查看觸發onOptionsItemSelected
- 17. Android。在列表中搜索查看
- 18. Android的搜索查看使用FloatingActionButton
- 19. 造型搜索查看的Android
- 20. 加入android系統中搜索查看
- 21. Firebase App索引Android搜索結果
- 22. 搜索查看搜索不ListView的
- 23. 使搜索查看做搜索
- 24. 搜索查看搜索全字內容
- 25. 如何搜索Firebase以查看用戶是否存在?
- 26. 搜索查看在ActionBarSherlock
- 27. ActionBarActivity與搜索查看
- 28. 搜索查看蜂窩
- 29. Drupal 7 Mongo搜索查看
- 30. Recycler查看多個搜索
是ü可以加載數據的特定類的列表,然後在你的適配器添加過濾器()函數!並在搜索視圖方法中調用它。 –
有沒有任何例子? – kings077712