gpt4 book ai didi

java - 为什么我不能使用 populateViewHolder 覆盖方法?

转载 作者:太空宇宙 更新时间:2023-11-03 12:03:01 24 4
gpt4 key购买 nike

我尝试从 fragment onViewCreated 方法中的 database 检索数据 我使用了如下所示的 FirebaseRecylerAdapter

@Override
public void onViewCreated(View view, @Nullable Bundle savedInstanceState) {
super.onViewCreated(view, savedInstanceState);

FirebaseRecyclerAdapter<AllUsers, AllUsersViewHolder> firebaseRecyclerAdapter;
}

public static class AllUsersViewHolder extends RecyclerView.ViewHolder {

View view;

public AllUsersViewHolder(View itemView) {
super(itemView);
view = itemView;
}
}

当我使用 firebaseRecyclerAdapter = new FirebaseRecyclerAdapter 时,它不会给我 populateViewHolder 方法,只提供如下方法

FirebaseRecyclerAdapter<AllUsers, AllUsersViewHolder> firebaseRecyclerAdapter = new FirebaseRecyclerAdapter<AllUsers, AllUsersViewHolder>() {
@Override
protected void onBindViewHolder(AllUsersViewHolder holder, int position, AllUsers model) {

}

@Override
public AllUsersViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
return null;
}
};

谁能告诉我为什么会这样

最佳答案

Firebase...Adapter 类的构造函数在 FirebaseUI 版本 3 中已更改。给定此查询:

Query query = FirebaseDatabase.getInstance()
.getReference()
.child("users")
.equalTo(name);

如果您使用的是版本 3 或更高版本,请使用 FirebaseRecyclerOptions:

 FirebaseRecyclerOptions<model_class_name> options =
new FirebaseRecyclerOptions.Builder<model_class_name>()
.setQuery(query, model_class_name.class)
.build();

然后声明一个 FirebaseRecyclerAdapter:

FirebaseRecyclerAdapter adapter = new FirebaseRecyclerAdapter<Chat, ChatHolder>(options) {

如上所述添加变量options。它是 FirebaseRecyclerOptions

类的变量

然后要添加项目,您必须使用 onBindViewHolder,因为它是最新版本的 firebase ui:

 @Override
protected void onBindViewHolder(Holder holder, int position, model_class_name model) {
// Bind the class object to the holder
// ...
}

有关更多信息,请查看:https://github.com/firebase/FirebaseUI-Android/tree/master/database

关于java - 为什么我不能使用 populateViewHolder 覆盖方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47364513/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com