2017-06-11 12 views
0

Firebaseの1つのオブジェクトの中にある入れ子リストオブジェクトのデータを取得しようとしています。私はいくつかの同様の質問を検索しようとしたと私は似たような質問を見つけることができません。私はこのオブジェクトを取得しようと多くの時間を費やしましたが、私はいつもヌル値を取得しますが、データスナップショットでオブジェクト全体がそこにあることがわかります。Firebaseのオブジェクト内でネストされたリストオブジェクトを取得する方法

私はCarオブジェクトを取得できますが、このオブジェクト内にあるユーザーのリストを取得できません。

これはFirebaseの私のデータベースの外観です:

Car 
-KloSsiZiz6DfvBhp9dk 
    - timestamp: 1496602610880 
    * users 
     - QsqgxinR4TabETV5DaAAg4fW9fE2 
     - k2L3B6rV0NTpLQsMfWhw2MrTZl42 
      - displayName: "bob" 
      - email: "[email protected]" 
      - guestType: 2 
      - uid: "k2L3B6rV0NTpLQsMfWhw2MrTZl42" 
     - m5PfDgvbGrM9IXZKgdO04TTvYMO2 
     - qXkogeDvLGPlP7LNFrWnAgbVzaQ2 
     - r2T34mSC0DggDejFxcb91SjqFVq1 
    - date: "2017-08-04T02:00:00Z" 

私のモデルの車:

private List <User> users; 
    private Object timestamp; 
    private String date; 

    public Car(){} 

//Getter and setter 

マイモデルユーザー。

private String displayName; 
    private String email; 
    private String photoUrl; 
    private int guestType; 
    private String uid; 


    public User() {} 

//Getter and setter 

これは、私は車のオブジェクトにあなたが代わりにListMapを使用する必要があり、事前

答えて

0

  @Override 
      public void onDataChange(DataSnapshot dataSnapshot) { 
       Car car= (Car) dataSnapshot.getValue(Car.class); 

//At this point, I can get the values inside the car object, but if I try to do car.getUsers() I get a null. 
      } 

感謝を持っている方法です。したがって、問題を解決するには、モデルクラスを変更する必要があります。ユーザーを習得するよりも、car.getUsers()を使用してください。このコード行はMapを返します。地図を繰り返して、ユーザーを取得してください。

希望します。

0

あなたのモデルの車の中のコードを、次の試してみてください、

public Map<String, User> users; 
関連する問題