onKeyDown / onBackPressed не стреляет - PullRequest
1 голос
/ 28 июня 2011

В каких случаях onKeyDown, onBackPressed не срабатывает?

В моем случае у меня есть TabActivity с ActivityGroup в фоновом режиме, где хранятся все предстоящие представления / действия. ActivityGroup заботится о добавлении и удалении представлений. Поэтому, когда я запускаю новый Activity в моей главной вкладке, вызывается метод startChildActivity ActivityGroup:

public void startChildActivity(String viewId, Intent intent) {
    Window window = getLocalActivityManager().startActivity(viewId, intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP));
    if(window != null) {
        history.add(new HistoryContainer(viewId));
        setContentView(window.getDecorView());
    }
}

Если я теперь запустил Activity Dummy таким образом, упомянутые keyEvents, такие как onKeyDown или onBackPressed, больше не запускаются. Происходит закрытие приложения.

public class Dummy extends Activity {
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.dummy);
}

@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
    MazdaGroup.group.back();
    return true;
}

@Override
public void onBackPressed() {
    MazdaGroup.group.back();
}

}

Буду рад вашей помощи!

...