之前试了N种方法都不行,原来是需要调用handler.postDelayed方法才能出现动画效果。
而且SwipeRefreshLayout.setRefrehing(true)不会触发下拉的业务。
SwipeRefreshLayout.OnRefreshListener refreshListener = new SwipeRefreshLayout.OnRefreshListener() { @Override public void onRefresh() { //下拉业务 } }; swipeRefreshLayout.setOnRefreshListener(refreshListener); new Handler().postDelayed(new Runnable() { @Override public void run() { swipeRefreshLayout.setRefreshing(true); refreshListener.onRefresh(); } }, 100);