SwipeRefreshLayout进入页面自动刷新

SwipeRefreshLayout进入页面自动刷新

@(标签)[SwipeRefreshLayout,下拉刷新,Android,zhongzilu,bit100]


通常在使用SwipeRefreshLayout控件的时候,是要通过下拉动作才能显示刷新动画和触发监听器SwipeRefreshLayout.OnRefreshListeneronRefresh方法。

要想一进Activity或Fragment就显示下拉刷新动画,
直接调用mRefresh.setRefreshing(true)是不会有刷新动画的。

可以使用以下方法

mRefresh.post(new Runable() {
    @Override
    public void run(){
        mRefresh.setRefreshing(true);
    }
});

要关闭刷新

mRefresh.setRefreshing(false);

不过,上面的方法是不会调用刷新监听器的onRefresh()方法的

要想一进入Activity或Fragment就显示刷新动画,并且调用刷新监听器的话,需要手动调用

OnRefreshListener listener = new OnRefreshListener(){
    public void onRefresh(){
         //TODO
    }
};
SwipeRefreshLayout mRefresh = (SwipeRefreshLayout) findviewbyId(R.id.refresh);
mRefresh.setOnRefreshListener(listener);

在onCreate中:

mRefresh.post(new Runable(){
    @Override
    public void run() {
        mRefresh.setRefreshing(true);
    }
});
listener.onRefresh()

作者钟子路(zhongzilu)
原文地址: https://zhongzilu.github.io/2016/12/14/SwipeRefreshLayout进入页面自动刷新/

本文总阅读量