Java 我的Webview应用程序运行良好,编译时没有任何错误,但当我按“上一步”按钮时,它崩溃了

Java 我的Webview应用程序运行良好,编译时没有任何错误,但当我按“上一步”按钮时,它崩溃了,java,android,webview,Java,Android,Webview,我正在android studio中开发webview应用程序,我遇到了一些问题。我的应用程序运行良好,编译时没有任何错误,也可以运行。但当我按下“后退”按钮时,它会崩溃。请用它来帮助我,因为我必须把它交给我的同事 以下是我正在使用的代码: public class MainActivity extends AppCompatActivity{ private ProgressBar progressBar; private Toolbar toolbar; private WebView we

我正在android studio中开发webview应用程序,我遇到了一些问题。我的应用程序运行良好,编译时没有任何错误,也可以运行。但当我按下“后退”按钮时,它会崩溃。请用它来帮助我,因为我必须把它交给我的同事

以下是我正在使用的代码:

public class MainActivity extends AppCompatActivity{
private ProgressBar progressBar;
private Toolbar toolbar;
private WebView webView;

@SuppressLint("SetJavaScriptEnabled")
@Override    public void onCreate(Bundle savedInstanceState) {

    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    progressBar = (ProgressBar) findViewById(R.id.progressBar);
    progressBar.setVisibility(View.GONE);
    WebView webView = (WebView) findViewById(R.id.webView);
    webView.setWebViewClient(new WebViewClientDemo());
    webView.getSettings().setJavaScriptEnabled(true);
    webView.getSettings().setRenderPriority(WebSettings.RenderPriority.HIGH);
    webView.getSettings().setCacheMode(WebSettings.LOAD_CACHE_ELSE_NETWORK);
    webView.getSettings().setAppCacheEnabled(true);
    webView.setScrollBarStyle(View.SCROLLBARS_INSIDE_OVERLAY);
    webView.getSettings().setDomStorageEnabled(true);
    webView.getSettings().setLayoutAlgorithm(WebSettings.LayoutAlgorithm.NARROW_COLUMNS);
    webView.getSettings().setUseWideViewPort(true);
    webView.getSettings().setSavePassword(true);
    webView.getSettings().setSaveFormData(true);
    webView.getSettings().setLoadsImagesAutomatically(true);
    webView.loadUrl("https://google.in/");


}

private class WebViewClientDemo extends WebViewClient {

    @Override        public boolean shouldOverrideUrlLoading(WebView view, String url) {
        view.loadUrl(url);
        return true;
    }
    @Override        public void onPageFinished(WebView view, String url) {
        super.onPageFinished(view, url);
        progressBar.setVisibility(View.GONE);
        progressBar.setProgress(100);
    }
    @Override        public void onPageStarted(WebView view, String url, Bitmap favicon) {
        super.onPageStarted(view, url, favicon);
        progressBar.setVisibility(View.VISIBLE);
        progressBar.setProgress(0);

    }

}
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
    if (event.getAction() == KeyEvent.ACTION_DOWN) {
        switch (keyCode) {
            case KeyEvent.KEYCODE_BACK:
                if (webView.canGoBack()) {
                    webView.goBack();
                } else {
                    finish();
                }
                return true;
        }

    }
    return super.onKeyDown(keyCode, event);
}

}

只需更改这一行:

WebView-WebView=(WebView)findViewById(R.id.WebView);
为此:

webView=(webView)findviewbyd(R.id.webView);
就这些,享受:)