2017-03-09 3 views
1

これはFirebaseデータベース上のノードである:この例でバッファがnullを返すのはなぜですか?

https://i.stack.imgur.com/OxEo4.png

これは、旅行のデータを取得するためのコードです:ヌルの

database = FirebaseDatabase.getInstance(); 
     myRef = database.getReference(FirebaseAuth.getInstance().getCurrentUser().getUid()); 
     myRef.addValueEventListener(new ValueEventListener() { 
      @Override 
      public void onDataChange(DataSnapshot dataSnapshot) { 

       for (DataSnapshot data : dataSnapshot.getChildren()) { 
        TripAddData value = (TripAddData) data.child(FirebaseAuth.getInstance().getCurrentUser().getUid()).child("Trips").child("13").child("tripName").getValue(); 
        buffer.append(value+"#"); 
        System.out.println(FirebaseAuth.getInstance().getCurrentUser().getUid()); 
       } 
       System.out.println(buffer.toString()); 
      } 

      @Override 
      public void onCancelled(DatabaseError error) { 
       // Failed to read value 
       Log.w("****", "Failed to read value.", error.toException()); 
      } 
     }); 

なぜバッファ復帰?これにより

TripAddData value = (TripAddData) data.child(FirebaseAuth.getInstance().getCurrentUser().getUid()).child("Trips").child("13").child("tripName").getValue(); 

+1

バッファ定義がbuffer.append()の前にどこにありますか? onCreate()内の –

+0

。 、それはちょうどバッファ=新しいStringBuffer(); –

答えて

0

は、この交換してみてください

String value = data.child("Trips").child("13").child("tripName").getValue(String.class); 

を私はそれが実際に何であるか見ることなくTripAddDataに鋳物のお手伝いをすることはできません。しかし、これは少なくとも何かを返すべきです。

関連する問題