要在Android中使用Firebase RecyclerView获取项目,可以按照以下步骤进行操作:
implementation 'com.google.firebase:firebase-database:16.0.4'
implementation 'com.firebaseui:firebase-ui-database:6.2.1'
public class MyAdapter extends FirebaseRecyclerAdapter {
public MyAdapter(@NonNull FirebaseRecyclerOptions options) {
super(options);
}
@Override
protected void onBindViewHolder(@NonNull MyViewHolder holder, int position, @NonNull Model model) {
// 在这里设置每个项目的数据
holder.textView.setText(model.getText());
}
@NonNull
@Override
public MyViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
// 创建并返回自定义视图持有者
View view = LayoutInflater.from(parent.getContext()).inflate(R.layout.item_layout, parent, false);
return new MyViewHolder(view);
}
public static class MyViewHolder extends RecyclerView.ViewHolder {
TextView textView;
public MyViewHolder(@NonNull View itemView) {
super(itemView);
textView = itemView.findViewById(R.id.text_view);
}
}
}
public class MainActivity extends AppCompatActivity {
private RecyclerView recyclerView;
private MyAdapter adapter;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
recyclerView = findViewById(R.id.recycler_view);
recyclerView.setLayoutManager(new LinearLayoutManager(this));
DatabaseReference databaseReference = FirebaseDatabase.getInstance().getReference().child("items");
FirebaseRecyclerOptions options = new FirebaseRecyclerOptions.Builder()
.setQuery(databaseReference, Model.class)
.build();
adapter = new MyAdapter(options);
recyclerView.setAdapter(adapter);
}
@Override
protected void onStart() {
super.onStart();
adapter.startListening();
}
@Override
protected void onStop() {
super.onStop();
adapter.stopListening();
}
}
以上代码示例中的Model类是一个自定义的数据模型类,根据实际需求进行定义。
通过以上步骤,你可以使用Firebase RecyclerView在Android中获取项目并在RecyclerView中进行显示。
上一篇:Android Firebase OnCompleteListener不起作用
下一篇:Android Firebase Remote Config: 应用程序名称未设置。请调用Builder#setApplicationName方法。