从通知启动我的应用程序时,我需要创建一个合成返回堆栈,因为目标屏幕是应用程序导航的几个步骤。如果不使用仅在 Android 2.3 中受支持的 TaskStackBuilder,我该如何做到这一点?
更多信息: 我有一个活动应用程序,它为每个屏幕使用单独的片段。所以我使用片段事务来改变屏幕。我目前正在使用多个背靠背交易来完成此操作,但似乎有一种更清洁的方式。
从通知启动我的应用程序时,我需要创建一个合成返回堆栈,因为目标屏幕是应用程序导航的几个步骤。如果不使用仅在 Android 2.3 中受支持的 TaskStackBuilder,我该如何做到这一点?
更多信息: 我有一个活动应用程序,它为每个屏幕使用单独的片段。所以我使用片段事务来改变屏幕。我目前正在使用多个背靠背交易来完成此操作,但似乎有一种更清洁的方式。
我最终只使用了多个片段事务,为 setCustomAnimations 方法的前两个参数传递了 0。这两个参数用于淡入淡出过渡,因此将它们设置为 0 会导致片段事务立即完成而没有动画。
//first fragment
getFragmentManager().beginTransaction().addToBackStack(null).setCustomAnimations(0, 0, R.anim.slide_in_left, R.anim.slide_out_right).replace(R.id.targetFrame, new Frag1(), "Frag1").commit();
getFragmentManager().executePendingTransactions();
//second fragment
getFragmentManager().beginTransaction().addToBackStack(null).setCustomAnimations(0, 0, R.anim.slide_in_left, R.anim.slide_out_right).replace(R.id.targetFrame, new Frag2(), "Frag2").commit();
getFragmentManager().executePendingTransactions();
//add as many fragments as you like in this manner