@Override public void handleMessage(Message msg) { switch (msg.what) { case LOADING: // mPbLoading.setVisibility(View.VISIBLE); mIvEmpty.setVisibility(View.GONE); mLvData.setVisibility(View.VISIBLE); break; case FINISH: mLvData.finishRefreshing(); mPbLoading.setVisibility(View.GONE); if (mDatas.isEmpty()) { mLvData.setVisibility(View.GONE); mIvEmpty.setVisibility(View.VISIBLE); } else { mLvData.setVisibility(View.VISIBLE); mIvEmpty.setVisibility(View.GONE); adapter.notifyDataSetChanged(); if (mIsFirst) { mLvData.smoothScrollToPosition(0); mIsFirst = false; } } break; } }