來自火力基地的影像
image1: image1
上面的 image 有 parent:"products" 和 child:"color","description"
image2: image2
above image continue image1
image3: image3
above image continue image2
image4: image4
above image continue image3
我想訪問產品中的所有值,例如產品有子顏色、描述、pic1、pic2、價格,并且在每個子項中存盤了多個值我想訪問所有這些值
uj5u.com熱心網友回復:
實際上你已經得到了價值。你可以這樣做,更合適。
databaseReference.child("color").addValueEventListener(new ValueEventListener(){
@Override
public void onDataChange(@NonNull DataSnapshot snapshot) {
for(DataSnapshot ds:snapshot.getChildren()){
final String key= ds.getKey();
final String pname= ds.getValue(String.class);
Log.d("talha5",pname);
}
}
@Override
public void onCancelled(@NonNull DatabaseError error) {
Log.e("color","Error: " error.getMessage());
}
});
此外,您需要處理onCancelled
. 嘗試將其作為最佳實踐。
更新:
如果你有很多孩子。你需要把它們分開。
databaseReference.child("description").addValueEventListener(new ValueEventListener(){
@Override
public void onDataChange(@NonNull DataSnapshot snapshot) {
for(DataSnapshot ds:snapshot.getChildren()){
final String key= ds.getKey();
final String pname= ds.getValue(String.class);
Log.d("description",pname);
}
}
@Override
public void onCancelled(@NonNull DatabaseError error) {
Log.e("description","Error: " error.getMessage());
}
});
其他人也一樣
databaseReference.child("pic1").addValueEventListener(new ValueEventListener(){
@Override
public void onDataChange(@NonNull DataSnapshot snapshot) {
for(DataSnapshot ds:snapshot.getChildren()){
final String key= ds.getKey();
final String pname= ds.getValue(String.class);
Log.d("pic1",pname);
}
}
@Override
public void onCancelled(@NonNull DatabaseError error) {
Log.e("pic1","Error: " error.getMessage());
}
});
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/492837.html
標籤:爪哇 安卓 火力基地 firebase-实时数据库