2017-12-04 6 views
1

나는 다음과 같은 중포 기지 데이터베이스 구조를 가지고 : 사용자 ID의 아이에서, 나는 시스템 날짜 .Date 아이가 아이를 만든, enter image description here는 Recyclerview에 중포 기지 실시간 데이터베이스에서 불과 특정 아이를 검색

시스템 날짜로부터 생성되며 둘 이상일 것입니다. 제가 Firebase 데이터베이스에서 가져 와서 Recyclerview에도 표시 할 시스템 날짜 하위 목록이 있습니까? 어떻게 구현할 수 있습니까? 그리고 데이터 모델 클래스는 무엇이 될까요? 당신이 당신의 자신의 어댑터를 만들어야합니다

+0

https://www.android-examples.com/show-firebase-database-data-into-recyclerview/ – HemalHerath

답변

0

: 데이터가가 변경 될 때

  • 는 중포 기지
  • 에서 전화를 onDataChange하는 수신은 RecyclerView을 중포 기지
  • 에서 데이터의 내부 사본 알려 유지
  • 뷰어 홀더가 필요할 때 생성합니다.
  • 은 Firebase 데이터의 데이터를 뷰와 바인딩합니다.
내가 빨리 가지고 올 수

최소는 다음과 같습니다

public static class MenuHomeAdapter extends RecyclerView.Adapter<MenuViewHolder> { 
    ArrayList<Menu> items = new ArrayList<>(); 

    public MenuHomeAdapter(Firebase ref) { 
     ref.addValueEventListener(new ValueEventListener() { 
      public void onDataChange(DataSnapshot snapshot) { 
       items.clear(); 
       for (DataSnapshot postSnapshot : snapshot.getChildren()) { 
        Menu menu = postSnapshot.getValue(Menu.class); 
        items.add(menu); 
       } 
       notifyDataSetChanged(); 
      } 

      public void onCancelled(FirebaseError firebaseError) { 
       System.out.println("The read failed: " + firebaseError.getMessage()); 
      } 
     }); 
    } 

    public MenuViewHolder onCreateViewHolder(ViewGroup parent, int viewType) { 
     View view = LayoutInflater.from(parent.getContext()).inflate(android.R.layout.simple_list_item_1, parent, false); 
     return new MenuViewHolder(view); 
    } 

    public void onBindViewHolder(MenuViewHolder holder, int position) { 
     Menu item = items.get(position); 
     holder.getTitleView().setText(item.getTitle()); 
    } 

    public int getItemCount() { 
     return items.size(); 
    } 
}; 
관련 문제