0
我有5個選項卡。每個選項卡包含多個活動,每個活動包含多個片段。TabActivity,包含片段的活動
對於如:導航需要的是在TAB1 - 活動1 - Fragment1_Activity1 - Fragment2_Activity1 - 活性2 - Fragmnet1_Activity2
我用的ActivityGroup顯示活性2的標籤內。
ActivityGroupClass:
public class CouponsActivityGroup extends ActivityGroup {
private Stack<String> stack;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
if (stack == null) stack = new Stack<String>();
//start default activity
push("FirstStackActivity", new Intent(this, CouponsContianer.class));
}
@Override
public void finishFromChild(Activity child) {
pop();
}
@Override
public void onBackPressed() {
pop();
}
public void push(String id, Intent intent) {
Window window = getLocalActivityManager().startActivity(id, intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP));
if (window != null) {
stack.push(id);
setContentView(window.getDecorView());
}
}
public void pop() {
if (stack.size() == 1) finish();
LocalActivityManager manager = getLocalActivityManager();
manager.destroyActivity(stack.pop(), true);
if (stack.size() > 0) {
Intent lastIntent = manager.getActivity(stack.peek()).getIntent();
Window newWindow = manager.startActivity(stack.peek(), lastIntent);
setContentView(newWindow.getDecorView());
}
}
}
從Fragment2_Activity1我用下面的代碼調用活性2:
Intent intent = new Intent();
intent.setClass(getParent(), RelatedItemListActivity .class);
CouponsActivityGroup activityStack = (CouponsActivityGroup) getParent();
activityStack.push("SecondStackActivity", intent);
問題現在面臨的
- 我要爲活性2的過渡動畫
從Activity2按下時 - Activity1(Fragment2_Activity1)中的最後一個Fragment狀態需要維護。
如何實現這一目標?
我使用Activity2的原因是 - 我想要一個滑動屏幕的滑動動畫,滑過底部屏幕,此屏幕應與底部屏幕的導航欄重疊。對於其他屏幕,導航欄是固定的。導航欄位於Activity1佈局內部。如果我使用片段而不是Activity2,它將不會滑過導航欄 – nila