program_language 및 궁금한것/Android Studio
안드로이드 뒤로가기키 비활성화 setEnabled
jinsiri
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이 된다.
반응형