개발도구/aOS - 안드로이드 개발
[안드로이드] webview 외장 브라우져 새창띄우기
Hay's App
2012. 1. 25. 16:08
html tag중에 <a href="http.... target="_blank">을 주게 되면 브라우져에서는 새창이 띄우게 된다.
하지만, webview 와 같이 엔진을 사용하게 된다면, 새창은 띄워지지 않는다.,
아래와 같이 . shouldOverrideUrlLoading 을 이용하여 브라우져에 http 같은 문자를 검색하여 새창을 띄울수 있다.
browser.setWebViewClient(new WebViewClient() {
하지만, webview 와 같이 엔진을 사용하게 된다면, 새창은 띄워지지 않는다.,
아래와 같이 . shouldOverrideUrlLoading 을 이용하여 브라우져에 http 같은 문자를 검색하여 새창을 띄울수 있다.
browser.setWebViewClient(new WebViewClient() {
@Override
public boolean shouldOverrideUrlLoading(WebView view, String overrideUrl) {
view.stopLoading();
//Log.d("test", overrideUrl);
if(overrideUrl.contains("close")) {
finish();
}else{
if(overrideUrl.startsWith("http:")) {
Intent i = new Intent(Intent.ACTION_VIEW, Uri.parse(overrideUrl));
startActivity(i);
return true;
}else{
view.loadUrl(overrideUrl);
}
}
return false;
}
public void onReceivedError(WebView view, int errorCode, String description, String fallingUrl) {
view.loadData("<html><body></body></html>", "text/html", "UTF-8");
//Toast.makeText(activity, "로딩오류"+description, Toast.LENGTH_SHORT).show();
}
});
browser.loadUrl(link);