【发布时间】:2018-12-26 21:43:20
【问题描述】:
我想在图片中获得价值,
DatabaseReference GetDestination_Order = FirebaseDatabase.getInstance().getReference("results").child(x).child("destination_order");
GetDestination_Order.addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
destination_order.clear();
for (DataSnapshot Snapshot : dataSnapshot.getChildren()) {
int data = Snapshot.getValue(Integer.class);
String im_or = String.valueOf(data);
destination_order.add(im_or);
}
pass_Destination_order(destination_order);
}
@Override
public void onCancelled(DatabaseError databaseError) {
throw databaseError.toException();
}
});
我可以像这样得到destination_order 目的地订单:[81、95、93、96、2] destination_order: [0, 1, 2, 3, 4, 5, 6]
public void pass_Destination_order(final ArrayList<String> destination_order) {
for (int n = 0; n < destination_order.size(); n++) {
String x = destination_order.get(n);
DatabaseReference myRef1 = FirebaseDatabase.getInstance("---firebaseurl---").getReference("travel").child("0").child("result").child(x).child("picture");
Log.e("url-x", x);
ValueEventListener valueEventListener = myRef1.addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
murl="";
datatest = dataSnapshot.getValue(String.class);
Log.e("url", String.valueOf(datatest));
if (count == 0) {
murl += datatest;
getImages(murl);`enter code here`
}
if(count==destination_order.size()-1){
count=0;}
else
count++;
}
@Override
public void onCancelled(DatabaseError databaseError) {
throw databaseError.toException();
}
});
}
希望得到按[81, 95, 93, 96, 2]排序的图片url ,但是我得到的 myurl 被弄乱了。 为什么第一个 myurl 不属于 81?输出/日志如下。
【问题讨论】:
-
分享你的完整数据库结构。
-
请添加您的数据库结构并指明您想要获取的确切值,并请回复@。
-
@AlexMamo 我加了,谢谢!
-
@Raj 我加了,谢谢!
-
您正在获取目的地号码,但您无法按该顺序获取 myurl。这是你的问题吗?
标签: android firebase firebase-realtime-database