带有“VVAA ..”的uid明星的顶部是我的用户的uid。我可以达到“34ern12”节点的数据。 (顺便说一下,我们没有定义这个节点的名称。用户这样做。)但我想要到达其他节点的数据。我的意思是我想要访问我的useruid节点的节点的所有数据。我怎么能这样做?你有什么想法吗?
这是我的代码:
firebaseAuth=FirebaseAuth.getInstance();
userId=firebaseAuth.getCurrentUser().getUid().toString();
listview=(ListView)view.findViewById(R.id.listview);
adapter=new ArrayAdapter<String>(getActivity(),R.layout.support_simple_spinner_dropdown_item,list);
listview.setAdapter(adapter);
datareference= FirebaseDatabase.getInstance().getReference().child("Arabalar").child(userId).child("34ern12");
datareference.addChildEventListener(new ChildEventListener() {
@Override
public void onChildAdded(DataSnapshot dataSnapshot, String s) {
String value=dataSnapshot.getValue(String.class);
list.add(value);
adapter.notifyDataSetChanged();
}
@Override
public void onChildChanged(DataSnapshot dataSnapshot, String s) {
}
@Override
public void onChildRemoved(DataSnapshot dataSnapshot) {
String value=dataSnapshot.getValue(String.class);
list.remove(value);
adapter.notifyDataSetChanged();
}
@Override
public void onChildMoved(DataSnapshot dataSnapshot, String s) {
}
@Override
public void onCancelled(DatabaseError databaseError) {
}
});
FloatingActionButton fab = (FloatingActionButton) view.findViewById(R.id.fab);
fab.setOnClickListener(new View.OnClickListener()
{
@Override
public void onClick(View view) {
startActivity(new Intent(getActivity(),AracEkle.class));
}
});
return view;
}}
答案 0 :(得分:0)
请使用此代码:
ValueEventListener eventListener = new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
if (dataSnapshot != null) {
@SuppressWarnings("unchecked")
Map<String, Object> map = (Map<String, Object>) dataSnapshot.getValue();
if (map != null) {
//Do everything you want
}
}
}
@Override
public void onCancelled(DatabaseError databaseError) {}
};
datareference.addListenerForSingleValueEvent(eventListener);
您需要的数据位于map
对象内。希望它有所帮助。