我是Android和Firebase的新手。 我想获得曝光,并通过一个项目学习这两种技术。 这是我的问题。 我在Firebase中更改了数据库的结构,但我不知道如何再次检索数据。
这是之前的结构:
和
之后:
这是我之前检索数据的代码:
mDatabase = FirebaseDatabase.getInstance().getReference().child("Events");
mDatabase.keepSynced(true);
//OnStart
FirebaseRecyclerAdapter<Blog, BlogViewHolder> firebaseRecyclerAdapter = new FirebaseRecyclerAdapter<Blog, BlogViewHolder>
(Blog.class, R.layout.blog_row, BlogViewHolder.class, mDatabase) {
@Override
protected void populateViewHolder(final BlogViewHolder viewHolder, final Blog model, int position) {
viewHolder.setTitle(model.getId());
viewHolder.setTitle(model.getTitle());
viewHolder.setDate(model.getDate());
viewHolder.setDesc(model.getDesc());
viewHolder.setImage(getApplicationContext(), model.getImage());
final View inflatedView = getLayoutInflater().inflate(R.layout.blog_row, null);
viewHolder.mView.setOnClickListener(new View.OnClickListener(){
@Override
public void onClick(View v){
Intent intent = new Intent(getApplicationContext(), Join_activity.class);
startActivity(intent);
}
});
我已经在这里和其他平台上尝试过代码,但没有得到答案。请帮助我。
答案 0 :(得分:0)
Expo和培训的1和2家长应该是按键,而不是静态数字。
检索数据库数据的问题就在这一行
mDatabase = FirebaseDatabase.getInstance().getReference().child("Events");
在执行此操作时,在您的populateViewHolder
内
viewHolder.setTitle(model.getTitle());
或尝试请求任何数据,它不会在您的引用.child("Events")
上,而是应该用静态的内容替换您的引用,或执行for循环以获取所有节点
mDatabase = FirebaseDatabase.getInstance().getReference().child("Events").child("1").child("Expo");