2016-03-20 7 views
1

webviewを使用してリモートURLを開く簡単なアンドロイドアプリを開発しています。ユーザーがリモートWebサイトの一部のページを探る際に引き出しテンプレート魔女はMainActivity.javaですでに public void onBackPressed()で2つのアクションを実装する方法

@Override 
public void onBackPressed() { 
    DrawerLayout drawer = (DrawerLayout) findViewById(R.id.drawer_layout); 
    if (drawer.isDrawerOpen(GravityCompat.START)) { 
     drawer.closeDrawer(GravityCompat.START); 
    } else { 
     super.onBackPressed(); 
    } 
} 

は、今私は戻ってボタンを有効にするには、コードのこの部分を使用したい

コードのこの部分を持っている

if(mWebView.canGoBack()) { 
    mWebView.goBack(); 

私がテストしたように、私はpublic void onBackPressed()を2度も持っていません。MainActivity.java

どうすればいいのですか?

答えて

2

既存のif-elseにif-elseブランチを追加します。たとえば、ドロワーが開いている場合は、戻るボタンを押しても閉じます。閉鎖されている場合は、 'までcanGoBack()が真を返すまで

+0

はい、それはうまくいった、私はあなたの助けに感謝ブラックベルト!どうもありがとうございました! – Zoel

+0

あなたは大歓迎です – Blackbelt

1
@Override 
    public void onBackPressed() { 
     DrawerLayout drawer = (DrawerLayout) findViewById(R.id.drawer_layout); 
     if (drawer.isDrawerOpen(GravityCompat.START)) { 
      drawer.closeDrawer(GravityCompat.START); 
     } else { 
      if(mWebView.canGoBack()) { 
       mWebView.goBack(); 
       return; 
      } 
      super.onBackPressed(); 
     } 
    } 
+0

助けてくれてありがとう – Zoel

関連する問題