如何修复Android手机的webview旋转?

Jua*_*ago 2 android screen orientation webview

我正试图弄清楚如何解决webview上的方向问题.基本上每次用户更改设备上的方向时,程序都会变白并重新加载整个页面.这只需要很长时间.

我希望它能像其他程序一样简单地调整页面大小以适应方向.我已经尝试阅读有关该主题的其他文章,但是当我实现他们的解决方案时,它似乎无法解决问题.

这是我目前的代码.

package testdev.HelloWebApp;

import android.app.Activity;
import android.os.Bundle;
import android.view.KeyEvent;
import android.webkit.WebSettings;
import android.webkit.WebView;
import android.webkit.WebViewClient;

public class HelloWebAppActivity extends Activity {
/** Called when the activity is first created. */
private WebView webView;
@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);

    webView = (WebView)findViewById(R.id.webView);
    WebSettings webSettings =webView.getSettings();
    webSettings.setJavaScriptEnabled(true);
    webView.setWebViewClient (new HelloWebViewClient());
    webView.loadUrl("http://google.com");

    if (savedInstanceState != null)
      ((WebView)findViewById(R.id.webView)).restoreState(savedInstanceState);

}
private class HelloWebViewClient extends WebViewClient {
    @Override
    public boolean shouldOverrideUrlLoading(WebView view, String url) {
        view.loadUrl(url);
        return true;
    }
}

@Override 
public boolean onKeyDown(int keyCode, KeyEvent event)
{
    if ((keyCode == KeyEvent.KEYCODE_BACK) && webView.canGoBack())
    {
        webView.goBack();
        return true;
    }
    return super.onKeyDown(keyCode, event);
}

@Override
protected void onSaveInstanceState(Bundle outState ){
    ((WebView) findViewById(R.id.webView)).saveState(outState);
}
}
Run Code Online (Sandbox Code Playgroud)

小智 7

从Android 3.2(API级别13)开始,当设备在纵向和横向之间切换时,"屏幕尺寸"也会发生变化.因此,如果要在开发API级别13或更高级别(由minSdkVersion和targetSdkVersion属性声明)时由于方向更改而阻止运行时重新启动,则除了"orientation"值之外,还必须包含"screenSize"值.也就是说,你必须decalare

<activity android:configChanges="orientation|screenSize">
Run Code Online (Sandbox Code Playgroud)

这是文档:http://developer.android.com/guide/topics/resources/runtime-changes.html