// 跳轉到其它activity時,直接使用Intent的話,activity會全屏顯示,底部導航欄沒有, // 須要將ActivityGroup中的activity移除,將要跳轉的頁面add進去 // 由於Android同一時間只有一個活動的Activity LinearLayout container = (LinearLayout) ((ActivityGroup) getParent()) .getWindow().findViewById(R.id.container); container.removeAllViews(); Intent intent = new Intent(context, class); intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); Window subActivity = ((ActivityGroup) HomeActivity.this.getParent()) .getLocalActivityManager().startActivity("BB", intent); container.addView(subActivity.getDecorView());
若是想要 activity 在ActivityGroup中跳轉,使用上邊的方法跳轉。直接使用Intent跳轉的話,整個Activity就會所有顯示。java
點擊返回鍵的時候,子activity貌似沒有獲取到onkeydown方法。使用下邊方法便可。ide
@Override public boolean onKeyDown(int keyCode, KeyEvent event) { // ActivityGroup攔截返回鍵 交給 子Activity處理 return getCurrentActivity().onKeyDown(keyCode, event); }