首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ListView OverScroll

ListView OverScroll
EN

Stack Overflow用户
提问于 2011-09-15 06:48:13
回答 2查看 6.4K关注 0票数 6

我正在装满一瓶listView,然后我想做点奇特的事情。我试图在列表中添加一个OverScroll标题,我期望的效果是,如果我滚动列表,列表顶部将显示一个可绘制的标题,因此,覆盖滚动标题看起来就像是列表的隐藏标题。

我在布局xml文件中设置了overScrollHeader和overScrollMode,但是没有任何更改。我是在Nexus S上做的。

那么,我可以从overScrollHeader中期待什么,以及如何让它工作呢?

如果有人能帮我的话我会非常感激的。

EN

回答 2

Stack Overflow用户

发布于 2011-12-30 18:17:32

你可以查看http://jasonfry.co.uk/?id=27。然而,它不适用于安卓2.3以下的版本。

票数 3
EN

Stack Overflow用户

发布于 2014-11-07 10:55:16

代码语言:javascript
复制
1) create a layout above your listview and status of this layout is gone (here is rlSearch)
2) in your activity, in action scroll, you get action motionEvent and check if listview is on the top and scroll down, you visible gone layout. here is my example and it work for me.
  listView.setOnScrollListener(new AbsListView.OnScrollListener()
        {
            boolean isScrollDown;
            float firstPosition = -1;

            @Override
            public void onScrollStateChanged(final AbsListView view, int scrollState)
            {
                view.setOnTouchListener(new View.OnTouchListener()
                {
                    @Override
                    public boolean onTouch(View v, MotionEvent event)
                    {
                        if (firstPosition == -1)
                        {
                            firstPosition = event.getRawY();
                            return false;
                        }
                        if (event.getRawY() > firstPosition && view.getFirstVisiblePosition() == 0)
                        {
                            isScrollDown = true;
                            firstPosition = -1;
                            rlSearch.setVisibility(View.VISIBLE);
                            return false;
                        }
                        if (event.getRawY() < firstPosition)
                        {
                            isScrollDown = false;
                            firstPosition = -1;
                            rlSearch.setVisibility(View.GONE);
                            return false;
                        }
                        return false;
                    }
                });
            }

            @Override
            public void onScroll(AbsListView view, int firstVisibleItem, int visibleItemCount, int totalItemCount)
            {
            }

        });
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7423912

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档