2012-06-01 81 views
0

我正在創建一組家中/後退鍵,以便在android中隱藏狀態欄。我設計了一個按鈕,模擬家庭按鍵這樣在android中執行後退按鈕

private void InjectKey(final int keyEventCode) { 
     new Thread(new Runnable() { 
     @Override 
     public void run() { 
       new Instrumentation().sendKeyDownUpSync(keyEventCode); 
     } 
     }).start(); 

}

這只是正常的家庭按鍵。但是,當我嘗試將相同的解決方案應用於後退按鈕時,應用程序顯然只是調用finish()本身。

我的問題是:我如何實現後退按鈕,以便它在最新的應用程序和本身上調用「返回」?

謝謝!

+0

請查看http://developer.android.com/guide/topics/fundamentals/activities.html –

回答

0

如果您使用自己的後退按鈕 並使用finish();停止該活動 然後將調用以下方法。 所以覆蓋你的第二個活動 folloing方法,並把所需的代碼在它

@Override 
    public void onStop() { 
     super.onStop(); 
     Toast.makeText(Activity2.this, "STOP", Toast.LENGTH_SHORT).show(); 
    } 

在第二個活動,你可以使用覆蓋下面的方法 將被調用時返回按鈕被稱爲

@Override 
    public void onBackPressed() { 
      Toast.makeText(Activity2.this, "BACK", Toast.LENGTH_SHORT).show(); 
      super.onBackPressed(); // allows standard use of backbutton for page 1 
    } 

在這個方法中放入需要的代碼。