Невозможно реализовать адаптер представления Recycler во фрагменте

Я не могу подключить адаптер Firestore Recycler во фрагменте. Я googled много вещей, но пока ничего хорошего. Фрагмент представляет собой одну из вкладок нижнего табличного макета. Данные извлекаются из одной коллекции. Я хочу представить список сообщений с несколькими пользователями в одном представлении.

Я пробовал приведенный ниже код, но пока ничего хорошего.

 public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
        //just change the fragment_dashboard
        //with the fragment you want to inflate
        //like if the class is HomeFragment it should have R.layout.home_fragment
        //if it is DashboardFragment it should have R.layout.fragment_dashboard
       View view = inflater.inflate(R.layout.fragment_home, container, false);
        final FragmentActivity c = getActivity();
        LinearLayoutManager layoutManager = new LinearLayoutManager(c);

        Query query = PostsRef.orderBy("timestamp", Query.Direction.DESCENDING);
        FirestoreRecyclerOptions<PostsModel> options = new FirestoreRecyclerOptions.Builder<PostsModel>()
                .setQuery(query, PostsModel.class)
                .build();
        adapter = new PostsAdapter(options);
        recyclerView = (RecyclerView) view.findViewById(R.id.recycler_view);
        recyclerView.setHasFixedSize(true);
        recyclerView.setLayoutManager(new LinearLayoutManager(c));
        recyclerView.setAdapter(adapter);

         mParent =view.findViewById(R.id.relative_home);
        return inflater.inflate(R.layout.fragment_home, null);


    }

Код адаптера

public class PostsAdapter extends FirestoreRecyclerAdapter<PostsModel, PostsAdapter.PostsHolder> {
    private OnItemClickListener listener;

    public PostsAdapter(@NonNull FirestoreRecyclerOptions<PostsModel> options) {
        super(options);
    }

    @Override
    protected void onBindViewHolder(@NonNull PostsHolder holder, int position, @NonNull PostsModel model) {
        //retrieve the fields here
        holder.textViewTitle.setText(model.getPostTitle());
        holder.textViewDescription.setText(model.getPostContent());
        holder.textViewPriority.setText(String.valueOf(model.getSpinnerC()));
        holder.AuthorName.setText(model.getName());
        holder.AuthorGender.setText(model.getGender());
    }

    @NonNull
    @Override
    public PostsHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
        View v = LayoutInflater.from(parent.getContext()).inflate(R.layout.post_list_layout,
                parent, false);
        return new PostsHolder(v);
    }

    public void deleteItem(int position) {
        getSnapshots().getSnapshot(position).getReference().delete();
    }

    class PostsHolder extends RecyclerView.ViewHolder {


        TextView textViewTitle;
        TextView textViewDescription;
        TextView textViewPriority;
        TextView AuthorName;
        TextView AuthorGender;

        public PostsHolder(View itemView) {
            super(itemView);
            textViewTitle = itemView.findViewById(R.id.quote1);
            textViewDescription = itemView.findViewById(R.id.name1);
            textViewPriority = itemView.findViewById(R.id.timestamp1);

                    }
    }

  }

person Community    schedule 14.08.2019    source источник
comment
В чем проблема с этим кодом? У вас есть ошибка?   -  person Alex Mamo    schedule 15.08.2019
comment
ошибка не появляется, но когда я запускаю код, recyclerview не отображается во фрагменте, список не обновляется из базы данных на экран   -  person    schedule 15.08.2019
comment
Вы пытались удалить recyclerView.setHasFixedSize(true);?   -  person Alex Mamo    schedule 15.08.2019
comment
большое спасибо Алекс мне очень помогло   -  person    schedule 15.08.2019
comment
как я могу что-то сделать, чтобы проголосовать за вашу помощь?   -  person    schedule 15.08.2019
comment
Вы должны подождать, чтобы заработать репутацию, и тогда вы сможете :)   -  person Alex Mamo    schedule 15.08.2019


Ответы (1)


Вы расширяете другое представление в методе onCreateView.

return inflater.inflate(R.layout.fragment_home, null);
person user11928729    schedule 14.08.2019
comment
если я удалю этот оператор, он запрашивает оператор возврата, что мне написать код для оператора возврата? и recyclerview настраивается в макете fragment_home - person ; 14.08.2019