琴弦欲奏 2013-03-30 10:39 采纳率: 0%
浏览 11361

求教怎么在滚动scrollview的时候实时获取他滚动的距离

我打算做一件很蛋疼的事,那就是scrollview嵌套scrollview(其实不是真的scrollview,而是一个用scrollview做的瀑布流控件),外层scrollview的作用是把页面的头部给滚出屏幕,然后把内容卡在顶部(如果知道美丽说的话,请参考美丽说“我”这个模块的页面效果(要登录才有)一模一样的需求),但是因为事件冲突,我打算重写scrollview,监听scrollview的滚动距离来,只要高过头部就把外层的scrollview的触摸监听给干掉。不过现在遇到个问题,就是不知道scrollview怎么实时监控他的滚动距离,用getscroll方法试过,用computeVerticalScrollOffset方法试过,不过都只有在手指离开之后才能获得距离,但不到划过去就卡住的效果,不知道有没有什么方法能够实时获得scrollview的滚动位置的呢?求指点。
ps:如果有大神知道怎么做到美丽说那种效果的更好,求指导

  • 写回答

2条回答

  • 小峰91 2014-09-02 08:17
    关注

    scrollView.setOnTouchListener(this);
    }

    @SuppressLint("NewApi")
    @Override
    public boolean onTouch(View v, MotionEvent event) {
    
        if (event.getAction() == MotionEvent.ACTION_MOVE) {
            // 可以监听到ScrollView的滚动事件
            System.out.println(scrollView.getScrollY());
        }
        return false;
    }
    
    评论

报告相同问题?