2011-05-16 41 views

回答

7

@Override 
public void onBackPressed() { 
    this.getParent().onBackPressed(); 
} 
+0

我不喜歡不得不從每個孩子那裏調用它,但是這樣做很好。謝謝。 – 2011-05-16 15:45:40

2

你可以在TabActivity和他的孩子之間建立一個通信程序。

我在TabActivity中創建了一個靜態的Handler,它是在TabActivity的onCreate中初始化的。

然後我創建了一個靜態getHandler()方法(在TabActivity中)。爲什麼不直接使用,從孩子的活動中

@Override 
public void onBackPressed() { 
    MyTabActivity.getHandler().sendEmptyMessage(MyTabActivity.BACK_PRESSED); 
} 
+0

@ShadowCloud解決方案也適用。 – 2011-05-16 15:15:51

2

我也遇到同樣的問題,以及

現在一個片段來實現你的問題要問你的孩子會。我這樣說:

@Override 
public boolean dispatchKeyEvent(KeyEvent event) 
{ 
    if (event.getKeyCode() == KeyEvent.KEYCODE_BACK) 
    { 
     //things u want to do when back key pressed 
    }  
    return super.dispatchKeyEvent(event); 
}