旋转时的Android Studio 3.0.1 WebView重新加载页面

时间:2018-02-06 16:17:37

标签: android android-studio webview

您好我在手机上使用我的应用程序时出现问题,当我在应用程序内旋转屏幕时,webview会重新加载所有内容,返回到我们打开应用程序的第一页。

我告诉你这里发生了什么,如果你知道解决方案,请帮助我。我也离开了我的主类和android清单。

Proof Video

Main.java

AndroidManifest.xml

2 个答案:

答案 0 :(得分:0)

在Manifest.xml文件中添加android:configChanges="orientation|screenSize"

如下所示:

<activity
        android:name=".MyActivity"
        android:configChanges="orientation|screenSize"
        android:label="@string/title_activity"
        android:theme="@style/AppTheme.MyTheme">

</activity>

答案 1 :(得分:0)

创建一个片段以包装WebView。始终在onCreateView中返回相同的WebView,以便在方向更改时不会创建新的WebView,因此不会重新加载。

public class MyWebViewFragment extends Fragment {
    private WebView mWebView;

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setRetainInstance(true);
    }

    @Override
    public void onResume() {
        super.onResume();
        mWebView.onResume();
    }

    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
        if (mWebView == null)
            mWebView = new WebView(getActivity());

        ViewGroup parent = (ViewGroup) mWebView.getParent();
        if (parent != null)
            parent.removeView(mWebView);

        return mWebView;
    }
}

将此片段添加到您的活动中。