如何检测Android Scroll view是否处于空闲状态?

Lib*_*bin 3 android android-scrollview android-button

我试图在滚动视图处于空闲状态期间隐藏按钮。该按钮应该仅在滚动时间内不可见。(其余时间按钮应该可见)

scrollView.setOnScrollChangeListener(new ScrollView.OnScrollChangeListener() {
    @Override
    public void onScrollChange(View v, int scrollX, int scrollY, int oldScrollX, int oldScrollY) {
        if (scrollX == scrollY)  {
            Button.setVisibility(View.VISIBLE);
        } else if ((scrollY > oldScrollY)) {
            Button.setVisibility(View.INVISIBLE);
        }
    }
});
Run Code Online (Sandbox Code Playgroud)

小智 5

找到解决方案

    scrollView.setOnTouchListener(new View.OnTouchListener() {
        @Override
        public boolean onTouch( View v, MotionEvent event ) {
            switch ( event.getAction( ) ) {
                case MotionEvent.ACTION_SCROLL:
                case MotionEvent.ACTION_MOVE:
                    Log.e( "SCROLL", "ACTION_SCROLL" );
                    break;
                case MotionEvent.ACTION_DOWN:
                    Log.e( "SCROLL", "ACTION_DOWN" );
                    break;
                case MotionEvent.ACTION_CANCEL:
                case MotionEvent.ACTION_UP:
                    Log.e( "SCROLL", "SCROLL_STOP" );
                    break;
            }
            return false;
        }
    });
Run Code Online (Sandbox Code Playgroud)