ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 안드로이드 뒤로가기키 비활성화 setEnabled
    program_language 및 궁금한것/Android Studio 2018. 8. 1. 21:48

    한참을 찾았다. 웹뷰 사용시 페이지가 없을때 뒤로가기 앞으로가기 비활성 하는 방법

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    // 이벤트 장착
            webview.setWebViewClient(new MyBrowser());
            WebSettings settings = webview.getSettings();
            settings.setJavaScriptEnabled(true);
            settings.setBuiltInZoomControls(true);
     
            btn_move.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View v) {
                    String url = et_url.getText().toString();
                    if (url != null && url.length() > 0) {
                        webview.loadUrl(url);
                    }
                }
            });
    cs

    우선 이렇게 웹뷰 이벤트 장착 후 


    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    btn_back.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View v) {
                    if (webview.canGoBack()) {webview.goBack();} else {finish();}
                }});
            
            btn_forward.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View v) {
                    if (webview.canGoForward()) {webview.goForward();}
                }});
    cs


    뒤로가기 앞으로 가기 기능을 부여해주고



    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    webview.setWebViewClient(new WebViewClient() {
                public void onPageStarted(WebView view, String url, Bitmap favicon) {
                    super.onPageStarted(view, url, favicon);
                }
     
                public void onPageFinished(WebView view, String url) {
                    super.onPageFinished(webview, url);
                    btn_back.setEnabled(view.canGoBack());
                    btn_forward.setEnabled(view.canGoForward());
                }
            });
    cs

    끝!  이게 핵심이다. 웹뷰에서 뒤로가기 앞으로가기 페이지가 없을시에 Enabled이 된다. 

    반응형

    댓글

Designed by Tistory.