반응형
안드로이드 개발시 WebView를 적용할 때 가로/세로로 화면이 전화되면 URL이 Reload 되는 현상이 발생합니다.
(화면전환 시 Activity의 onCreate 메소드가 다시 호출되기 때문)
[화면 전환시 Method 호출 순서]
onSaveInstanceState() → onCreate() → onRestoreInstanceState()
package com.example.webview;
import android.os.Bundle;
import android.app.Activity;
import android.webkit.WebView;
public class MainActivity extends Activity {
WebView webview;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
webview = (WebView)findViewById(R.id.webview);
webview.getSettings().setJavaScriptEnabled(true);
webview.getSettings().setBuiltInZoomControls(false);
webview.getSettings().setSupportZoom(true);
webview.getSettings().setLoadWithOverviewMode(true);
webview.getSettings().setUseWideViewPort(true);
if(savedInstanceState == null)
webview.loadUrl("http://m.daum.net");
}
@Override
protected void onSaveInstanceState(Bundle savedInstanceState){
super.onSaveInstanceState(savedInstanceState);
webview.saveState(savedInstanceState);
}
@Override
protected void onRestoreInstanceState(Bundle savedInstanceState){
super.onRestoreInstanceState(savedInstanceState);
webview.restoreState(savedInstanceState);
}
}
반응형
'안드로이드' 카테고리의 다른 글
플레이 스토어 - 앱 업데이트가 거부됨 (0) | 2015.04.24 |
---|---|
In-App 개발 시 Base64 인코딩 RSA 공개 키(base64EncodedPublicKey) (0) | 2015.04.24 |
This Android SDK requires Android Developer Toolkit version 21.1.0 or above. (0) | 2015.04.24 |
Android 개발 환경 (0) | 2015.04.24 |
갤럭시S6 - 개발자 옵션 (0) | 2015.04.20 |
댓글