2014-10-02 57 views
0

我知道可能會重複某些線程,但我無法弄清楚我的錯誤。我有滑塊dreawer在哪裏是碎片和碎片有webview。一切工作正常至少有一件事,即當我按回按鈕它關閉應用程序。我嘗試了一些其他可能的解決方案,但沒有任何工作。我甚至沒有得到任何錯誤。我甚至試過這種簡單的解決方案,但沒有任何進展Webview後退按鈕正在查殺所有活動

@Override 
public void onBackPressed() { 
    super.onBackPressed(); 
    finish(); 
} 

My Main activity:

And this is one of my fragments:

+0

看來,您使用的是MainActivity然後多個片段內(slidingdrawer)或以其他方式。讓我知道如果這種理解是正確的。 – 2014-10-02 12:53:54

+0

是的,你是完全正確的。 – Tarvo 2014-10-02 13:00:23

+0

請看下面的答案,並接受它是否適合你 – 2014-10-02 13:03:08

回答

0

默認情況下後退按鈕將關閉該應用程序,如果你是在主/登陸活動(還有其他方法以及)。如果你想覆蓋後退行爲,你應該重載onBackPressed(),你做的是正確的,但你應該避免調用super.onBackPressed()(因爲這會給你默認的行爲,即關閉活動或finish(),這個你自己關閉的活動。這是你希望避免的。

希望它能幫助。

@Override 
public void onBackPressed() { 
    if (mSlidingDrawer.isOpened()) { 
     mSlidingDrawer.close() 
    } else { 
     Toast.makeText(MyTestApplication.getAppContext(), "Closing application", Toast.LENGTH_SHORT).show(); 
     super.onBackPressed(); 
    } 
} 
+0

我真的不知道不知道我做錯了,但仍然沒有。一種方式關閉按鈕沒有做任何事情,其他方式關閉應用程序。 – Tarvo 2014-10-02 13:16:28

+0

你需要添加你的邏輯來處理返回按鈕按下。我更新了這個例子。 – 2014-10-02 14:40:45

+0

我想我必須讓它成爲因爲它不工作。也許你可以在你的代碼中嘗試它?也許我的模擬器有問題? – Tarvo 2014-10-02 15:49:40