目标是
1)从AppWidgetProvider或任何其他后台任务启动活动A(很简单)。
2)从活动A单击“返回”按钮后转到活动B.
问题是我无法在AndroidManifest.xml中设置PARENT_ACTIVITY,因为活动B类名在运行时确定。所以在一个案例中,我需要去活动B,在其他情况下,它是另一个活动。好像我没有PARENT_ACTIVITY就可以使用TaskStackBuilder。
我可以在活动A的finish()方法中处理这个问题,但它应该是一个更简单的方法来将活动B添加到"后栈#34;当我运行startActivity(intent)时。有什么想法吗?
答案 0 :(得分:1)
使用startActivities(Intent[])
来合成您自己的Activity实例的Backstack。例如:
Intent activityB = new Intent(context, ActivityB.class);
Intent activityA = new Intent(context, ActivityA.class);
// They should be ordered from bottom of stack to top of stack
Intent[] activities = new Intent[] { activityB, activityA };
context.startActivities(activities);
答案 1 :(得分:0)
试试这个:
@Override
public void onBackPressed() {
Intent intent = new Intent(ActivityA.this , ActivityB.class);
startActivity(intent);
}
希望它有所帮助! :)