Android studio WebView上的操作栏后退按钮崩溃

Android studio WebView上的操作栏后退按钮崩溃,android-studio,webview,crash,android-actionbar,back-button,Android Studio,Webview,Crash,Android Actionbar,Back Button,我目前正在实现一个后退按钮操作,用于导航webview历史记录。我的webview一直在工作(包括处理webview中的打开链接)。但是,在添加后退按钮操作后,每当我尝试使用后退按钮时,它就会崩溃。这是我的主要活动代码: public class MainActivity extends Activity { WebView mWebView; //Back Button Code @Override public boolean onKeyDown(int keyCode, KeyEvent

我目前正在实现一个后退按钮操作,用于导航webview历史记录。我的webview一直在工作(包括处理webview中的打开链接)。但是,在添加后退按钮操作后,每当我尝试使用后退按钮时,它就会崩溃。这是我的主要活动代码:

public class MainActivity extends Activity {

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

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


@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(amapps.com.uhss.R.layout.activity_main);
     WebView mWebView = (WebView) findViewById(R.id.activity_main_webview);
    mWebView.setWebViewClient(new WebViewClient());

    WebSettings webSettings = mWebView.getSettings();
    webSettings.setJavaScriptEnabled(false);
    mWebView = (WebView) findViewById(R.id.activity_main_webview);
    mWebView.loadUrl("http://uhsswordandshield.com/");
    mWebView.getSettings().setSupportMultipleWindows(true);



}
谁能告诉我密码有什么问题吗。我相信这与我的
网络视图; 初始化webview之前的声明。但我不确定是否有任何方法可以处理webview历史导航。另外,我不确定如何发布我的日志猫以及发布什么,所以如果有人能告诉我需要发布日志猫的哪一部分,那将是非常棒的。谢谢

请尝试以下代码:

if((keyCode==KeyEvent.ACTION_DOWN)){

        if(mWebView.canGoBack() == true){
                mWebView.goBack();
            }else{
                finish();
            }

        return true;
    }

    return super.onKeyDown(keyCode, event);

如果在创建时出现问题,我将把它放在哪里?我如何声明mWebView或如何使其成为全局变量?将此代码放在onKeyDown方法中,而不是放在您的代码中。好的,但我必须重新声明mWebView吗?或者请您编辑我的代码,因为我认为这样更容易理解。