android - 使 SwipeRefreshLayout 动画不可见

标签 android listview visibility swiperefreshlayout overscroll

是否可以让 Swipe 刷新布局动画完全不可见?我想让整个动画(包括加载和下拉手势时带箭头的 cricle)消失,但我希望能够使用 onRefresh 函数。也许你知道我可以在我的 ListView 中使用的任何替代方法(OnScroll 更改监听器OverScroll 对我不起作用,因为它会触发我的 ListView 中的底部 overscoll,我不会这样做当列表向上滑动并释放以向上滚动时触发我的功能 - 滑动刷新布局对我来说处理得很好)

 protected void onCreate(Bundle savedInstanceState) {
       swipeRefreshLayout = (SwipeRefreshLayout) findViewById(R.id.swipe_refresh_layout);
                swipeRefreshLayout.setOnRefreshListener(NewActivity.this);
               swipeRefreshLayout.setEnabled(false);
                swipeRefreshLayout.setRefreshing(false);
    }

    @Override
    public void onRefresh() {
        Log.i(TAG, "refresh");
    }

更新:根据你的提示,我尝试以多种方式实现(仅使用 setEnabled(false)setRefreshing(false) 或两者,但在那种情况下 onRefresh函数根本没有触发。

最佳答案

使用..

已编辑 来自文档:

如果一个 Activity 希望只显示进度动画,它应该调用 setRefreshing(true)。要禁用手势和进度动画,请在 View 上调用 setEnabled(false)。 所以要显示动画:

swiprefreshLayout.setEnabled( true );
swiperefreshLayout.setRefreshing( true );

隐藏动画:

swiperefreshLayout.setRefreshing( false );
swiprefreshLayout.setEnabled( false );

关于android - 使 SwipeRefreshLayout 动画不可见,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42644254/

相关文章:

c# - 如何使用 C#.net 替换 ListView 中一行中列的值?

java - 在java中访问其类之外的私有(private)变量

javascript - 从 anchor html 标记调用 javascript 函数

android - Jetpack Compose 文本显示混淆

android - ActivityResult 未返回到仪器测试中的调用 Activity

android - 如何停止刷新 viewpager 内容?

Android:向 ListView App Widget 添加多个 View

html - 什么是 DOM 回流?

java - android 获取广播流数据

android - Webview 错误 variations_seed (No such file or directory)