WebView를 이용해서 웹페이지를 열었을 때 뒤로가기키를 누르면 WebView가 바로 종료되고 이전 Activity가 열리거나 프로그램이 종료된다.
이것을 막기위해서 이전 웹페이지가 존재할 경우 그 페이지로 돌아가고, 페이지가 존재하지 않을 경우 WebView를 종료하도록 하는 처리를 해주는 아래 함수를 추가하면 된다.
public boolean onKeyDown(int keyCode, KeyEvent event) {
if ((keyCode == KeyEvent.KEYCODE_BACK) && web.canGoBack()) {
web.goBack();
return true;
}
return super.onKeyDown(keyCode, event);
}
저도 초보라 해당 속성을 찾아야 하는데... 약간의 조언이라면
public void onBackPressed() {
해당속성;
}
이정도겠네요 ㅋ
웹뷰에 보면 cangoback같은 메소드 있습니다정확한 이름은 레퍼런스 보시구요그걸로 확인 해서 뒤로가기 할수 있으면 뒤로 보내시면 됩니다.당연하겠지만 온백프레스?인가 하는 메소드 오버라이드 해야 하구요
해결 봤습니다 감사합니다!!
1 | public void onBackPressed() { if (webView.canGoBack()) { webView.goBack(); Toast.makeText(this, "previous" , 500).show(); } else { super.onBackPressed(); } } |
로, 뒤로 더 이상 갈 페이지 없으면 웹뷰 종료 시켰어요^^