小编wmo*_*ora的帖子

notifyDataSetChange无法在RecyclerView上运行

我正在使用Android的新RecyclerView,但每当我调用其中一个"notify"方法时,我都无法刷新我的自定义适配器.

我试过调用notifyDataSetChanged,notifyItemRangeInserted和notifyItemInserted,但它们似乎都没有工作.

这是我的自定义适配器的代码.我基本上试图刷新一个字符串列表:

package com.mycompany.myapp.adapters;

import android.support.v7.widget.RecyclerView;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.LinearLayout;
import android.widget.TextView;

import com.mycompany.myapp.R;

import java.util.List;

public class FeedAdapter extends RecyclerView.Adapter<FeedAdapter.ViewHolder> {

    private List<String> mDataset;

    public FeedAdapter(List<String> dataset) {
        super();
        mDataset = dataset;
    }

    @Override
    public ViewHolder onCreateViewHolder(ViewGroup parent, int i) {
        LinearLayout v = (LinearLayout) LayoutInflater.from(parent.getContext())
                .inflate(R.layout.list_item_feed, parent, false);
        v.setLayoutParams(new LinearLayout.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT,
                ViewGroup.LayoutParams.WRAP_CONTENT));
    return new ViewHolder(v);
    }

    @Override
    public void onBindViewHolder(ViewHolder holder, int position) {
        holder.setText(mDataset.get(position));
    }

    @Override
    public int getItemCount() {
        return mDataset.size();
    } …
Run Code Online (Sandbox Code Playgroud)

android custom-adapter android-support-library android-recyclerview

26
推荐指数
2
解决办法
4万
查看次数