在哪些情况下onKeyDown,onBackPressed没有触发?
在我的情况下,我在背景中有一个带活动组的TabActivity,其中存储了所有即将到来的视图/活动。 ActivityGroup负责添加和删除视图。因此,当我在主选项卡中启动一个新的Activity时,将调用ActivityGroup的startChildActivity方法:
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,那么像onKeyDown或onBackPressed这样的keyEvents就不会再触发了。正在发生的事情是应用程序正在关闭。
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();
}
}
很高兴为您提供帮助!