【发布时间】:2020-07-15 10:15:08
【问题描述】:
所以我创建了一个回收器视图,从我的 firebase 中检索一些数据,但我不知道如何获取键值以将其传递给另一个活动。
我试图从每个人那里得到一个教程,但没有一个人有和我一样的方法。
这是我的代码:
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_proses_pesanan);
mDatabase = FirebaseDatabase.getInstance().getReference();
final FirebaseAuth firebaseAuth = FirebaseAuth.getInstance();
uid = firebaseAuth.getUid();
mRecycler = findViewById(R.id.list_proses);
mRecycler.setHasFixedSize(true);
final LinearLayoutManager layoutManager = new LinearLayoutManager(this);
layoutManager.setOrientation(LinearLayoutManager.VERTICAL);
mRecycler.setLayoutManager(layoutManager);
Query query = getQuery(mDatabase);
FirebaseRecyclerOptions options = new FirebaseRecyclerOptions.Builder<Status>()
.setQuery(query, Status.class)
.build();
mAdapter = new FirebaseRecyclerAdapter<Status, StatusViewHolder>(options) {
@Override
public StatusViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
LayoutInflater inflater = LayoutInflater.from(parent.getContext());
return new StatusViewHolder(inflater.inflate(R.layout.item_status, parent, false));
}
@Override
protected void onBindViewHolder(@NonNull final StatusViewHolder holder, final int position, @NonNull final Status model) {
holder.binToStatus(model, new View.OnClickListener() {
@Override
public void onClick(View v) {
}
});
}
};
mAdapter.notifyDataSetChanged();
mRecycler.setAdapter(mAdapter);
}
@Override
public void onStart() {
super.onStart();
if (mAdapter != null) {
mAdapter.startListening();
}
}
@Override
public void onStop() {
super.onStop();
if (mAdapter != null) {
mAdapter.stopListening();
}
}
private Query getQuery(DatabaseReference mDatabase) {
Query query = mDatabase.child("PesanFoto").child(uid);
return query;
}
}
如您所见,我有一个带有模型和 MyViewHolder 类的回收站视图。但我不知道如何获取我的回收站视图的位置来获取数据
【问题讨论】:
标签: java android firebase-realtime-database android-recyclerview