Android/Android Studio

안드로이드 WebView 가로방향 스크롤 이벤트 금지

클레인 2023. 2. 3.
반응형

Android 어플 UI 가 점점 고도화 되고 복잡해지는 추세입니다.

 

WebView 에서 가로방향만 스크롤을 금지해야 하는 경우가 있어 

 

해당 코드를 메모해 보았습니다.

 

mWebView.setHorizontalScrollBarEnabled(false);
        mWebView.setOnTouchListener(new View.OnTouchListener() {
            public boolean onTouch(View v, MotionEvent event) {
                switch (event.getAction()) {
                case MotionEvent.ACTION_DOWN: {
                    // x 좌표를 저장하고 넘긴다.
                    m_downX = event.getX();
                }
                    break;
                case MotionEvent.ACTION_MOVE:
                case MotionEvent.ACTION_CANCEL:
                case MotionEvent.ACTION_UP: {
                    // 저장한 x 좌표를 설정한다.
                    event.setLocation(m_downX, event.getY());
                }
                    break;
                }
                return false;
            }
        });

 

위와 같이 사용자의 터치 이벤트를 

 

중간에서 intercept 하여 해당 이벤트를 막을 수 있습니다.

반응형

댓글