【问题标题】:how to fetch data from firebase database on firebaserecycleradapter click如何从firebaserecycleradapter上的firebase数据库中获取数据点击
【发布时间】:2018-10-21 22:11:36
【问题描述】:

适配器

firebaseRecyclerAdapter = new FirebaseRecyclerAdapter<AllUsers, UsersViewHolder>(options) {
        @Override
        protected void onBindViewHolder(@NonNull UsersViewHolder holder, int position, @NonNull AllUsers model) {
            holder.setName(model.getName());
            holder.setStatus(model.getStatus());

            final String user_id = getRef(position).getKey();
            final String user_name = getRef(position).

            holder.mView.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View v) {
                    Intent intent = new Intent(getActivity(), Chat.class);
                    intent.putExtra("Recievers_Id", user_id);
                    intent.putExtra("Recievers_Name", user_name);

                    startActivity(intent);
                }
            });

        }

        @Override
        public UsersViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
            View view = LayoutInflater.from(parent.getContext())
                    .inflate(R.layout.all_users_layout, parent, false);

            return new UsersViewHolder(view);
        }
    };
    mUsersList.setAdapter(firebaseRecyclerAdapter);

    return rootView;
}

我知道 .getkey();返回父数据...但在父内部我有一个孩子是“名称”,我想获取它...我如何实现这一点

数据库截图 - https://ibb.co/mBKZLd

【问题讨论】:

  • 如果您有兴趣,this 是您可以从 Firebase 实时数据库中检索数据并使用 FirebaseRecyclerAdapter 将其显示在 RecyclerView 中的方法。

标签: java android database firebase firebase-realtime-database


【解决方案1】:

尝试以下方法:

DatabaseReference reference = FirebaseDatabase.getInstance().getReference("Users");

reference.addListenerForSingleValueEvent(new ValueEventListener() {
 @Override
public void onDataChange(DataSnapshot dataSnapshot) {
   for(DataSnapshot datas: dataSnapshot.getChildren()){
       String keys=datas.getKey();
       String name=datas.child("Name").getValue().toString();
      }
 }
  @Override
public void onCancelled(DatabaseError databaseError) {
    }
 });

第一个快照位于Users,然后迭代并获取密钥和名称

【讨论】:

  • 我认为 OP 想知道如何在 Firebase UI 组件 FirebaseRecyclerAdapter 中做到这一点
  • 你有什么物品?!还要在 onclicklistener 中添加以上内容
猜你喜欢
  • 2018-11-10
  • 2016-12-16
  • 2023-04-04
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多