资讯专栏INFORMATION COLUMN

识别安卓ListView上滑和下滑操作

villainhr / 2367人阅读

摘要:最近自己做了一个,想要在中上滑的时候隐藏,然后下滑的时候再显示出来。效果最终实现如下向上滑动向下滑动

最近自己做了一个app,想要在listview中上滑的时候隐藏ActionBar,然后下滑的时候再显示出来。

查了资料后,大概明白了,主要实现方法是:每次滑动时记录当前屏的第一个可见项目的位置(int)oldVisibleItem,然后下次滑动的时候用oldVisibleItem和现在的第一个可见项的位置firstVisibleItem作比较,如果oldVisibleItem较大,可以得出是上滑操作,反之是下滑操作。
效果:

最终实现如下:

lv.setOnScrollListener(new AbsListView.OnScrollListener() {
    private int oldVisibleItem = 0;
    private boolean touchFlg = true;
    @Override
    public void onScrollStateChanged(AbsListView view, int scrollState) {
        touchFlg = true;
    }

    @Override
    public void onScroll(AbsListView view, int firstVisibleItem, int visibleItemCount, int totalItemCount) {
        if (firstVisibleItem > oldVisibleItem && touchFlg) {
            // 向上滑动
            mListener.onListScroll(true);
            touchFlg = false;
        }
        if (oldVisibleItem > firstVisibleItem && touchFlg) {
            // 向下滑动
            mListener.onListScroll(false);
            touchFlg = false;
        }
        oldVisibleItem = firstVisibleItem;
    }
});

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/68145.html

相关文章

  • H5之title吸顶功能

    摘要:吸顶功能吸顶是一种比较常见的交互效果,当页面滑出屏幕边界,标题会自动吸附在屏幕边缘,用于提示用户。代表在有滚动条时,滚动条向下滚动的距离也就是元素顶部被遮住部分的高度。在没有滚动条时恒成立。单位,可读可设置。 吸顶功能 吸顶是一种比较常见的交互效果,当页面滑出屏幕边界,标题会自动吸附在屏幕边缘,用于提示用户。 基本原理 在H5中实现的基本原理就是判断当前页面滑动的距离scrollTop...

    darkerXi 评论0 收藏0
  • [译] 在 Angular 中使用 HammerJS (触摸手势)

    摘要:是一个为应用添加触摸手势的非常受欢迎的库文中将看到结合一起使用是多么的简单原文示例是针对版本经过测试在目前最新的版本中此教程依然适用文章将以来统一代称版本名词滑动和类似但滑动更快速无粘滞左滑右滑上滑下滑头像轮播简介我们将构建一个头像轮播可以 HammerJS 是一个为 web 应用添加触摸手势的非常受欢迎的库,文中,将看到 Angular 结合 HammerJS 一起使用是多么的简单 ...

    lifesimple 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<