2017-09-25 23 views
0

我有一個簡單的代碼,工作正常。它從frag1調用frag2然後是frag3開始。後退按鈕也可以正常工作。問題在webview中使用backPressed,同時在片段內導航

我使用此代碼實例片段:

FragmentTransaction ft = getFragmentManager().beginTransaction(); 
       Frag2 f2 = new Frag2(); 
       ft.replace(R.id.content_frame, f2); 
       ft.addToBackStack(null); 
       ft.commit(); 

同時我在片段中的一個有一個的WebView,我想瀏覽網頁,所以我說這裏面的代碼:

@Override 
    public void onBackPressed() 
    { 
     WebView webView = null; 
     if(webView == null) return; 

     if(webView.canGoBack()) 
      webView.goBack(); 
     else 
      super.onBackPressed(); 
    } 

它運作良好,但我失去了片段後退按鈕。

我試圖將實例化WebView的片段中的壓縮後移,但是我得到的msg:方法並未覆蓋其超類的方法。

我在這裏做錯了什麼?

回答

0

愚蠢的錯誤。它適用於此代碼:

@Override 
    public void onBackPressed() 
    { 
     if(webView != null && webView.canGoBack()) 
      webView.goBack(); 
     else 
      super.onBackPressed(); 
    } 

以前我從不去super.onBackPressed();