私のアプリケーションにFirebase Recyclerview UIを実装しています。私はrecyclerviewアダプタを実装しており、それは私の例外を示しています。続き は私のアダプターのコードです:DataSnapshotに引数のないコンストラクタがありません
FirebaseRecyclerAdapter<DataSnapshot, MyHolder> recyclerAdapter = new FirebaseRecyclerAdapter<DataSnapshot, MyHolder>(
DataSnapshot.class,
R.layout.row_slots,
MyHolder.class,
databaseReference.child("slots").child(uid).child(dayOfWeek).child("time")
) {
@Override
protected void populateViewHolder(MyHolder viewHolder, DataSnapshot model, int position) {
System.out.println("Key : "+model.getKey());
}
};
にはどうすれFirebaseRecyclerAdapterを使用してスナップショット値を得ることができますか?あなたのrecyclerAdapter
を初期化するときDataSnapshotは本当に私は、エラーの原因となっていると思いパラメータなしでコンストラクタを持っていないことを特徴と
独自のモデルクラスを定義する必要があります。 – Piyush
はい私はそのようにしました。しかし、自分のモデルクラスでは、スナップショットから取得できるように各ノードのキーを取得することができません。それが私がSnapshotで試している理由です。私たち自身のクラスでノードのキーを取得できる方法はありますか(そのノードの子としてキーを格納しないで) – Dhaval
何か誤解があると思います。ノードユーザーが1人いると仮定します。新しいユーザーを追加するたびに、メソッドpush()を使用します。今、ユーザーは2つの子の名前と電子メールを持っています。だから私は2つのフィールドの名前と電子メールを持つ1つのUser.classを取得するために取得します。すべてうまく動作します。しかし、そのユーザーのプッシュIDを取得したい場合はどうしたらよいですか?私たちはそれを得ることができますが、User.classを使用すると、そのノードを取得することができませんスナップショットを使用するユーザーのノードには、プッシュIDを含む子はありません。 – Dhaval