public class MainActivity extends Activity implements OnRefreshListener{
private SwipeRefreshLayout mSwipeRefreshLayout;
private TextView mRandomText;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
mSwipeRefreshLayout = (SwipeRefreshLayout)this.findViewById(R.id.swipe_refresh);
mSwipeRefreshLayout.setOnRefreshListener(this);
mRandomText = (TextView)this.findViewById(R.id.random_text);
}
@Override
public void onRefresh() {
mSwipeRefreshLayout.setRefreshing(true);
(new Handler()).postDelayed(new Runnable() {
@Override
public void run() {
//3秒后停止刷新
mSwipeRefreshLayout.setRefreshing(false);
int num = (int)(Math.random() * 100 + 1);
String s = mRandomText.getText().toString();
s = s + + num;
mRandomText.setText(s);
}
}, 3000);
}
}
如果想要加下拉刷新的动画
swipeRefreshLayout.setColorSchemeColors(R.color.colorAccent, R.color.colorPrimary);
ViewTreeObserver vio = swipeRefreshLayout.getViewTreeObserver();
vio.addOnGlobalLayoutListener(new ViewTreeObserver.OnGlobalLayoutListener() {
@Override
public void onGlobalLayout() {
final DisplayMetrics metrics = getResources()
.getDisplayMetrics();
Float mDistanceToTriggerSync = Math.min(
((View) swipeRefreshLayout.getParent()).getHeight() * 0.6f,
500 * metrics.density);
try {
Field field = SwipeRefreshLayout.class
.getDeclaredField("mDistanceToTriggerSync");
field.setAccessible(true);
field.setFloat(swipeRefreshLayout, mDistanceToTriggerSync);
} catch (Exception e) {
e.printStackTrace();
}
ViewTreeObserver obs = swipeRefreshLayout.getViewTreeObserver();
obs.removeOnGlobalLayoutListener(this);
}
});