private void populateRatesListView() { if (mRatesListView == null) { mRatesListView = (RecyclerView) getActivity().findViewById(R.id.stockRatesList); mRatesListView.setLayoutManager(new LinearLayoutManager(getActivity())); } final PreferencesManager prefs = PreferencesManager.getInstance(); List<String> ratesList = prefs.getStocksList(); if (ratesList.isEmpty()) return; JSONObject ratesJson; try { ratesJson = new JSONObject(prefs.getStockData()); } catch (JSONException ignored) { return; } final ExRatesGroup exRatesGroup = new ExRatesGroup("", ratesList, ratesJson); if (mStockItemsAdapter == null) { mStockItemsAdapter = new StockItemsAdapter(getActivity(), fromExRates(exRatesGroup.exRates), this); } else { mStockItemsAdapter.setStockItems(fromExRates(exRatesGroup.exRates)); mStockItemsAdapter.notifyDataSetChanged(); } mRatesListView.setAdapter(mStockItemsAdapter); }