回答

1

您可以使用FirebaseUI for Android库。

只需添加依赖关系(在0.5.3工程与火力9.4.0库):

dependencies { 
    // Single target that includes all FirebaseUI libraries 
    compile 'com.firebaseui:firebase-ui:0.5.3' 
} 

定义DatabaseReference

FirebaseDatabase database = FirebaseDatabase.getInstance(); 
DatabaseReference ref = database.getReference("passengers"); 

然后:

  • 创建定制ViewHolder
  • Creat EA自定义子类FirebaseRecyclerAdapter

ViewHolder类:

public static class PassengerHolder extends RecyclerView.ViewHolder { 

} 

FirebaseRecyclerAdapter类:

RecyclerView recycler = (RecyclerView) findViewById(R.id.messages_recycler); 
recycler.setHasFixedSize(true); 
recycler.setLayoutManager(new LinearLayoutManager(this)); 

mAdapter = new FirebaseRecyclerAdapter<Passenger, PassengerHolder>(Passenger.class, R.layout.mylayout, PassengerHolder.class, mRef) { 
    @Override 
    public void populateViewHolder(PassengerHolder passengerViewHolder, Passenger passenger, int position) { 
     passengerViewHolder.setName(passenger.getName()); 
     //....... 

    } 
}; 
recycler.setAdapter(mAdapter); 
+0

我也想用'CardView'先生。这怎么可能? – tin

+0

@tin在您的布局文件(由R.layout.mylayout引用)中只包含CardView。 –

+0

嗨,@GabrieleMariotti我与我的应用程序有同样的问题。我似乎无法读取所有数据,而是我的应用程序只从第一个节点/用户读取数据。请你帮忙,我试着你在这里做什么,但我的结构有点不同,我似乎无法得到它的工作:http://stackoverflow.com/questions/41797009/using-search-view-android- with-firebase – SumOne

1

你可以尝试这样的:

 FirebaseDatabase database = FirebaseDatabase.getInstance(); 
     DatabaseReference ref = database.getReference(); 

     ref.addListenerForSingleValueEvent(new ValueEventListener() { 
       @Override 
       public void onDataChange(DataSnapshot dataSnapshot) { 
        //Your Logic here 
        for (DataSnapshot eventSnapshot : dataSnapshot.getChildren()) { 
        YourModel mModel = eventSnapshot.getValue(YourModel.class); 
        Log.e("DATA" ,""+ mModel); 
        } 
       } 

       @Override 
       public void onCancelled(DatabaseError databaseError) { 

       } 
      }); 

你必须创建一个ARRA您RecycleviewŸ列表并添加每个模型即mModel您ArrayList和显示在列表中

More Info 1

+0

感谢rashid它为我工作.. –