android - 如何让SwipeRefreshLayout按需刷新?

标签 android layout

我有一些开源项目 (CySmart) 的 SwipeRefreshLayout。

我想添加一个按钮来刷新布局,就好像它现在被向下滑动一样(按需)。

这个效果是怎么实现的

最佳答案

你可以做到;

@Override
protected void onCreate(Bundle savedInstanceState){
    final SwipeRefreshLayout layout = (SwipeRefreshLayout) findViewById(R.id.swipe_refresh);
    Button button = (Button) findViewById(R.id.button_refresh);

    layout.setOnRefreshListener(refreshListener);
    button.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {
            dispatchRefresh(); //Refresh
        }
    });
}
private SwipeRefreshLayout.OnRefreshListener refreshListener = new SwipeRefreshLayout.OnRefreshListener() {
    @Override
    public void onRefresh() {
        dispachRefresh();
    }
};

private void dispatchRefresh(){

    layout.setRefreshing(true);
    //code to refesh data, etc.
}

然后;

layout.setRefreshing(false);

刷新完成时

关于android - 如何让SwipeRefreshLayout按需刷新?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35507196/

相关文章:

java - 如何在 Android Studio 中从 java 类意向到 kotlin 类

javascript - React Native - 居中 flexWrap 内容

layout - SSRS 中的表未对齐

android - 通过电子邮件发送 WhatsApp 聊天时,如何让我的 Android 应用程序出现在应用程序选择器中?

Android Studio 2.3 sdk 管理器打不开

java - Android中如何监听GC事件

android - 通过 URL 更改 Framelayout 的背景图像

android - 获取 android.content.res.Resources$NotFoundException : exception even when the resource is present in android

Angular2 - 多个模块的共享布局

android - 带有输入流的 httpclient 多部分发布