У меня ошибка «E / RecyclerView: адаптер не подключен: пропускается макет» - PullRequest
0 голосов
/ 09 февраля 2019

Мое приложение закрывается, когда я получаю доступ к активности, где находится мой RecyclerView, оно говорит мне, что проблема в моем адаптере, но, будучи новичком в этом, правда в том, что я не знаю, каким может быть решение.Я уже искал другие ответы с той же проблемой, но я все еще не заставляю его работать

public class RecyclerViewAdapterCategoria extends RecyclerView.Adapter<RecyclerViewAdapterCategoria.MyViewHolder> {

    private Context mContext;
    private List<Categoria> mData;
    private RequestOptions option;

    public RecyclerViewAdapterCategoria(Context mContext, List<Categoria> mData) {
        this.mContext = mContext;
        this.mData = mData;

        //Request option for Glide

        option = new RequestOptions().centerCrop().placeholder(R.drawable.loading_shape).error(R.drawable.loading_shape);

    }

    @Override
    public MyViewHolder onCreateViewHolder(ViewGroup parent, final int viewType) {

        View view;
        LayoutInflater inflater = LayoutInflater.from(mContext);
        view = inflater.inflate(R.layout.categoria_row_item, parent, false);
        final MyViewHolder viewHolder = new MyViewHolder(view);


        return viewHolder;
    }

    @Override
    public void onBindViewHolder(MyViewHolder holder, int position) {

        holder.tv_id.setText(mData.get(position).getId_categoria());
        holder.tv_nombre.setText(mData.get(position).getNombre());

        //Load image from Internet

        Glide.with(mContext).load(mData.get(position).getImagen_url()).apply(option).into(holder.iv_imagen);

    }

    @Override
    public int getItemCount() {
        return mData.size();
    }

    public static class MyViewHolder extends RecyclerView.ViewHolder{

        TextView tv_id;
        TextView tv_nombre;
        ImageView iv_imagen;
        LinearLayout view_container;

        public MyViewHolder(View itemView){
            super(itemView);


            view_container = itemView.findViewById(R.id.container);
            tv_id = itemView.findViewById(R.id.categoria_id);
            tv_nombre = itemView.findViewById(R.id.categoria_nombre);
            iv_imagen = itemView.findViewById(R.id.categoria_imagen);

        }

    }

}

Ответы [ 2 ]

0 голосов
/ 09 февраля 2019

@ vimukthi верен, и вы, вероятно, пропускаете этот код recyclerView.setAdapter(myAdapter); в классе, который выполняет привязку и вызывает recyclerView.

0 голосов
/ 09 февраля 2019

Я не могу понять вашу проблему из-за языка.Но у вас звание E/RecyclerView: No adapter attached; skipping layout.Поэтому я думаю, что вы пропустили объявление вашего Адаптера в вашем классе yourRecyclerViewActivity.Для базового уровня вы должны добавить

    recyclerView = (RecyclerView) findViewById(R.id.recycler_view);
    RecyclerViewAdapter myAdapter = new RecyclerViewAdapter(this,yourList);
    RecyclerView.LayoutManager mLayoutManager = new LinearLayoutManager(getApplicationContext());
    recyclerView.setLayoutManager(mLayoutManager);
    recyclerView.setAdapter(myAdapter );

к вашему recyclerViewActivity классу.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...