私はFirebase使用して、次のJSONを解析しようとしています:解析ID発行FirebaseRecyclerAdapter
ここ{
"organizations" : {
"-KS5bLCjQmNSQZDIQkTE" : {
"about" : {
"address" : "teka",
"city" : "sns",
"country" : "South Africa",
"created_at" : 1474358502482,
"name" : "diverse",
"pincode" : "167377",
"state" : "punjab",
"utc" : "2016-09-20 08:01:41"
},
"department" : {
"-KS9LUpZWo5UqtWKJwJ8" : {
"address" : "best",
"name" : "test"
}
}
}
}
}
は私のJavaコードです:
@IgnoreExtraProperties
public class Organizations {
About about;
Department department;
public String getDepartment() {
return department;
}
public static class Department{
public String address;
public String name;
public String getName() {
return name;
}
public String getAddress() {
return address;
}
}
}
FirebaseRecyclerAdapter
fbOrganizationRecycleAdapter = new FirebaseRecyclerAdapter<Organizations, OrganizationHolder>
(Organizations.class, R.layout.list_items_orgnization,OrganizationHolder.class,lastFifty)
{
@Override
protected void populateViewHolder(OrganizationHolder viewHolder, final Organizations model, int position) {
Log.e(TAG, "test " + model.getDepartment().getName());
}
};
すべては除いて罰金を解析していますDepartment
。 model.getDepartment().getName();
を取得しようとすると、私にnull department
が返されます。
データは、以下のJSONのようなものであるならば、それは正常に動作します:
{
"organizations" : {
"-KS5bLCjQmNSQZDIQkTE" : {
"about" : {
"address" : "teka",
"city" : "sns",
"country" : "South Africa",
"created_at" : 1474358502482,
"name" : "diverse",
"pincode" : "167377",
"state" : "punjab",
"utc" : "2016-09-20 08:01:41"
},
"department" : {
"address" : "best",
"name" : "test"
}
}
}
}
私は問題がID
であると思います。私は、次のJSONからID "-KS9LUpZWo5UqtWKJwJ8"
を解析する方法を教えてください:
"department" : {
"-KS9LUpZWo5UqtWKJwJ8" : {
"address" : "best",
"name" : "test"
}
}
最小のコードを入力してくださいt問題を再現します。今のところ、 'Department'クラスの外観や実際にデータを読む方法(何らかのリスナーやアダプタのリファレンスを設定する方法)はわかりません。 –
'JsonDeserializer'または' TypeAdapterFactory'を書いて、あなた自身でそれを解析することができます。ここにJesse Wilson(Gson投稿者)の素敵な例があります。あなたのお返事ありがとうございます。http://stackoverflow.com/a/11272452/1726166 – ytRino