FirebaseRecyclerAdapter不能通过两个选项应用

问题描述 投票:0回答:1

我下面有FirebaseRecyclerAdapter声明:

    private void updateList() {
        adapter = new FirebaseRecyclerAdapter<User, ListOnlineViewHolder>(
                User.class,
                R.layout.user_layout,
                ListOnlineViewHolder.class,
                counterRef
        ) {
            @Override
            protected void onBindViewHolder(@NonNull ListOnlineViewHolder holder, int position, @NonNull User model) {
                holder.txtEmail.setText((model.getEmail()));
            }

            @NonNull
            @Override
            public ListOnlineViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
                return null;
            }
        };
        adapter.notifyDataSetChanged();
        listOnline.setAdapter(adapter);
    }

adapter = new FirebaseRecyclerAdapter<User, ListOnlineViewHolder>的声明给出了FirebaseRecyclerAdapter cannot be applied.的错误,我知道我需要构建FirebaseRecyclerOptions.如何构建2个选项?

java android firebase firebaseui
1个回答
0
投票

首先,通过构建FirebaseRecyclerOptions配置适配器。例如:

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

接下来创建FirebaseRecyclerAdapter对象。您应该已经有一个ViewHolder子类来显示每个项目。例如:

FirebaseRecyclerAdapter adapter = new FirebaseRecyclerAdapter<User, ListOnlineViewHolder>(options) {
    @Override
    public ListOnlineViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
        // Create a new instance of the ViewHolder, in this case we are using a custom
        // layout called R.layout.message for each item
        View view = LayoutInflater.from(parent.getContext())
                .inflate(R.layout.message, parent, false);

        return new ListOnlineViewHolder(view);
    }

    @Override
    protected void onBindViewHolder(ListOnlineViewHolder holder, int position, User model) {

    }
};

在此处查看更多信息:

https://github.com/firebase/FirebaseUI-Android/blob/master/database/README.md

© www.soinside.com 2019 - 2024. All rights reserved.