我正在开发一个使用标签组在活动之间切换的应用。我知道TabActivty是折旧的,使用视图而不是活动是更好的方法,但由于时间限制,我没有时间重写应用程序。
所以这是正在发生的事情。我有4个标签,比如Tab1,Tab2,Tab3,Tab4。
假设Tab1有ActivityA> ActivityB> ActivityC和我在ActivityC上。当我切换到Tab2并点击后退按钮时,我希望它切换回Tab1。
我试图通过覆盖onKeyDown
方法来实现这一点,但是当我这样做时,它会将我带回Tab1,然后关闭当前活动。所以我在ActivityC上,当它切换回Tab1时,ActivityC关闭并离开ActivityB。这是一个问题,特别是如果我在ActivityA上,因为它将关闭应用程序。这是我正在使用的覆盖方法。任何帮助表示赞赏!
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_BACK) {
@SuppressWarnings("deprecation")
TabActivity tabs = (TabActivity) getParent();
tabs.getTabHost().setCurrentTabByTag("tab1");
return false;
}
return super.onKeyDown(keyCode, event);
}
@Override
public void onBackPressed(){
//Do Nothing
}