마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

웹뷰 사용한 웹브라우저 질문

0 추천

웹뷰를 사용한 웹브라우저를 연습삼아 만들어 보고 있습니다 :)

궁금한거 두개 질문 드리겠습니다.

 

1.

A 액티비티에 있는 웹뷰에 있는 링크를 클릭했을 때

B 액티비티에 있는 웹뷰로 페이지를 열게 됩니다.

대충 이런 식으로

A 액티비티에서 웹뷰로 안펍을 보여주고 메뉴중에 하나를 누르면

그 링크는 B 액티비티의 웹뷰에서 보여주게 하는 방법이 궁금합니다.

 

간단한 샘플 소스나 검색어 좀 알려주세요.

 

2.

X 액티비티에 XML로 만들어진 에디트박스에 google 을 입력하면

Y 액티비티에 있는 웹뷰에서 http://search.naver.com/search.naver?where=nexearch&query=google 가

나오게 하려면 어떻게 하는지 샘플 소스나 검색어 부탁드립니다.

 

부탁드립니다 ㅠㅠ

리을 (310 포인트) 님이 2013년 6월 18일 질문

2개의 답변

0 추천
WebViewClient 로 찾아보심 될 듯 한데요.

WebViewClient를 상속하면 shouldOverrideUrlLoading(WebView view, String url) 메서드를 핸들링 할 수 있는데

보시면 파라미터에 url이 있습니다.

 

A 액티비티 웹뷰에서 링크 클릭시 저 url로 주소값이 들어올거고 이 주소값을 B액티비티의 웹뷰로 전달하심 될 거 같네요.

(테스트는 안해봐서 ^^)
너굴리 (260 포인트) 님이 2013년 6월 18일 답변
0 추천
1.

직접 해보진 않았지만 대략 생각나는 대로 적습니다.

 

우선 webview 에 setWebViewClient  설정하시고

해당 client에서 onPageStarted  를 오버라이드 합니다.

기본적으로 super.onPageStarted(view, url, favicon); 보내게 될 텐데

이것을 주석 또는 삭제하면 A 페이지에서의 webview 페이지 이동은 막지 않을까 생각되구요,

대신에 intent로 B 페이지에 onPageStarted로 온 url (String 값)을 전달해서 B 페이지에서

load 하시면 되겠습니다.

 

2.

1번과는 달리 이벤트 발생시 바로 B 페이지로 원하는 링크를 전달하여 load하시면 되겠습니다.
비뢰광 (7,410 포인트) 님이 2013년 6월 18일 답변
...