@Override public void onLoadFinished(Loader<Cursor> loader, Cursor data) { Log.d("EventsFragment", "Cursor loaded " + data.getCount()); if (getLoaderManager().getLoader(URL_LOADER).equals(loader)) { if (data.getCount() == 0) { emptyView.setVisibility(View.VISIBLE); recyclerView.setVisibility(View.GONE); emptyView.setText(R.string.no_events); } else { emptyView.setVisibility(View.GONE); recyclerView.setVisibility(View.VISIBLE); mAdapter.swapCursor(data); } } swipeContainer.setRefreshing(false); }
@Override public void onRefresh() { swipeContainer.setRefreshing(true); BackendSyncAdapter.syncImmediately(EventsFragment.this.getContext()); mAdapter.notifyDataSetChanged(); // stop refresh icon animation when offline if (!hasInternetConnection(getContext())) { // wait 1.5 seconds new Handler() .postDelayed( new Runnable() { public void run() { // stop refresh animation swipeContainer.setRefreshing(false); Toast.makeText( getContext(), "No internet connection available", Toast.LENGTH_SHORT) .show(); } }, 1500); } }
@Override public void onLoaderReset(Loader<Cursor> loader) { mAdapter.swapCursor(null); }