Firebaseのリアルタイムデータベースから取得したデータからリサイクラビューの人物の名前を表示しました。androidスタジオのgithubからインポート中にエラーが発生しました。2.3.3
ユーザーが各人の名前をクリックすると、その人の詳細を表示するにはどうすればよいですか?与えられた画像形式に保存されているそれぞれの人の
説明:
Firebaseのリアルタイムデータベースから取得したデータからリサイクラビューの人物の名前を表示しました。androidスタジオのgithubからインポート中にエラーが発生しました。2.3.3
ユーザーが各人の名前をクリックすると、その人の詳細を表示するにはどうすればよいですか?与えられた画像形式に保存されているそれぞれの人の
説明:
同じ名前を持つ多くのユーザーが存在する可能性があるため、私はidで、ユーザーの詳細を取得することができ示唆しています。隠されているいくつかのビューにあなたのユーザーIDを格納することができるかもしれません。
以下の手順に従って、IDで詳細を取得できます。
Firebaseデータベースのユーザーフィールドに対応するクラスを作成します。
public class UserDetail {
private String uId;
private String name;
private String phoneNo;
private String address;
private String product;
private String spinner;
private String quantity;
// Empty constructor
// Getters and setters
}
上記のクラスに対応するDAOクラスを作成して、データベースからレコードを取得します。すべての活動から今
public class UserDetailDao {
private final FirebaseDatabase mDatabase;
public UserDetailDao() {
mDatabase = FirebaseDatabase.getInstance();
}
public void getUserById(String id, OnResultFetched onResultFetched) {
final UserDetail userDetail = null;
mDatabase.getReference()
.child("users")
.child(id)
.addListenerForSingleValueEvent(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
userDetail = dataSnapshot.getValue(UserDetail.class);
onResultFetched.onResult(userDetail);
}
@Override
public void onCancelled(DatabaseError databaseError) {
onResultFetched.onResult(null);
}
});
}
// Callback interface
public interface OnResultFetched {
public void onResult(UserDetail userDetail);
}
}
、あなたは、すべてのユーザーのリストを取得することができます。
new UserDetailDao().getUserById(id_of_your_user, new UserDetailDao.OnResultFetched() {
@Override
public void onResult(UserDetail userDetail) {
// **** HERE IS YOUR USER ****
}
});
本当にありがとうございました。 – joshua
これで問題が解決した場合は、この回答を受け入れてアップしてください。前もって感謝します :) –
エラーの種類? –