【发布时间】:2018-05-12 06:27:18
【问题描述】:
第一次活动
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();
holder.mView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
DatabaseReference reference = FirebaseDatabase.getInstance().getReference().child("Users").child(user_id);
reference.addListenerForSingleValueEvent(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
name = dataSnapshot.child("Name").getValue().toString();
}
@Override
public void onCancelled(DatabaseError databaseError) {
}
});
Intent intent = new Intent(getActivity(), Chat.class);
intent.putExtra("Recievers_Id", user_id);
intent.putExtra("Recievers_Name", name);
startActivity(intent);
}
});
}
第二次活动
name.setText((getIntent().getStringExtra("Recievers_Name")));
MessageRecieverId = getIntent().getStringExtra("Recievers_Id");
id 正在传递,但名称不是...我确定问题在于从数据库中获取它
我可以从数据库中获取 id,因为它是父级...但我无法获取它的子级“名称”...有人可以指出我哪里出错了
【问题讨论】:
-
调试您的应用并标记 2 行并检查
user_id和name是否在第一个活动中
标签: java android xml database firebase