[html] Dom 돔 마우스 이벤트 무시, 제거, 비활성화

Posted by Find my true self Fimtrus
2018.02.28 17:13 Programming/Web

웹 화면에 로고와 같이 화면에는 보여야 하지만 클릭이 되지 않아야 하는 뷰가 있을 경우.


아래와 같이 style을 적용시키면 해당 화면에 대한 마우스 이벤트는 사라지게 된다.


pointer-events: none;


HTML 코어에서 정의된 마우스와 관련된 이벤트를 비활성화한다.

이 댓글을 비밀 댓글로
  1. 잘보고갑니다~

[Android]스크롤 뷰 안에 웹뷰가 있을 경우 스크롤 뷰만 스크롤 되는 문제(Webview inside ScrollView scrolled only ScrollView)

Posted by Find my true self Fimtrus
2017.07.28 10:19 Programming/Android

스크롤뷰 안에 스크롤이 필요한 경우


NestedScrollView를 이용하여, 스크롤이 되게 할 수 있는데,


웹뷰의 경우는 웹페이지가 스크롤이 필요한 경우라 NestedScrollView로 해결 할 수 없다.


해당 문제를 해결하기 위해선, 웹뷰에서 발생하는 터치 이벤트를


다른 뷰에 뺏기지 않아야 원하는 결과를 얻을 수 있다.



먼저 웹뷰를 상속 받는 클래스를 하나 만든다.

상속 받은 웹뷰 클래스에 onTouchEvent 메소드를 Overriding 한다.


public class RoadView extends WebView {

    @Override
    public boolean onTouchEvent(MotionEvent event) {
        requestDisallowInterceptTouchEvent(true);
        return super.onTouchEvent(event);
    }
}


requestDisallowInterceptTouchEvent(true)를 추가 하면 웹뷰 단에서 처리할 코드는 완료된다.


이 메소드는 웹뷰에서 발생하는 이벤트를 다른 뷰에서 가로채는 것을 막는 역할을 한다.


따라서 부모뷰인 스크롤뷰가 웹뷰에서 발생하는 이벤트를 가로채지 못하게 된다.




마지막으로 아래와 같이 xml에 적용 하면 스크롤이 가능한 웹뷰가 만들어진다.

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:orientation="vertical">

    <ScrollView
        android:layout_width="match_parent"
        android:layout_height="match_parent">

        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:orientation="vertical">

                <com.fimtrus.test.view.RoadView
                    android:id="@+id/roadview"
                    android:layout_width="match_parent"
                    android:layout_height="200dp"
                    android:layout_marginBottom="16dp" />
               
        </LinearLayout>
    </ScrollView>
</LinearLayout>


이 댓글을 비밀 댓글로

[Android] WebView(웹뷰) 신뢰할 수 없는 인증서 문제 해결.

Posted by Find my true self Fimtrus
2013.05.14 17:17 Programming/Android

https 사이트를 접속하려고할 때, 서버측 인증서에 문제가 없을 경우에는 발생하지 않지만, 인증서가 신뢰할 수 없을 때, 찾을 수 없는 페이지라는 에러를 받게 된다.

간단하게 WebView Setting으로 해결할 수 있다.

우선 WebClient를 만든다.

public class WebClient extends WebViewClient {}

그리고 Override Method 중, onReceivedSslError 를 추가한다.

public class WebClient extends WebViewClient {
@Override
public void onReceivedSslError(WebView view,
SslErrorHandler handler, SslError error){
handler.proceed();
}
}

그리고 WebView에 set 해주면!!.

mWebView.setWebViewClient(new WebClient());

정상적으로 동작하는 웹뷰를 볼수 있다.

이 댓글을 비밀 댓글로