相关疑难解决方法(0)

notifyDataSetChanged无法在RecyclerView上运行

我从服务器获取数据,然后解析它并将其存储在List中.我正在将此列表用于RecyclerView的适配器.我正在使用碎片.

我正在使用带KitKat的Nexus 5.我正在使用支持库.这会有所作为吗?

这是我的代码:(使用虚拟数据的问题)

会员变量:

List<Business> mBusinesses = new ArrayList<Business>();

RecyclerView recyclerView;
RecyclerView.LayoutManager mLayoutManager;
BusinessAdapter mBusinessAdapter;
Run Code Online (Sandbox Code Playgroud)

我的onCreateView():

@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
        Bundle savedInstanceState) {

    // Getting data from server
    getBusinessesDataFromServer();

    View view = inflater.inflate(R.layout.fragment_business_list,
            container, false);
    recyclerView = (RecyclerView) view
            .findViewById(R.id.business_recycler_view);
    recyclerView.setHasFixedSize(true);

    mLayoutManager = new LinearLayoutManager(getActivity());
    recyclerView.setLayoutManager(mLayoutManager);

    mBusinessAdapter = new BusinessAdapter(mBusinesses);
    recyclerView.setAdapter(mBusinessAdapter);

    return view;
}
Run Code Online (Sandbox Code Playgroud)

从服务器获取数据后,parseResponse()调用.

protected void parseResponse(JSONArray response, String url) {
    // insert dummy data for demo

    mBusinesses.clear();

    Business business;

    business …
Run Code Online (Sandbox Code Playgroud)

android android-5.0-lollipop android-recyclerview

51
推荐指数
3
解决办法
11万
查看次数