有两个活动:ActivityA
和ActivityB.
从ActivityA
我要去ActivityB
。然后,我选择一些列表项并返回Activity A
(相同实例)选择的数据。最困难的是:如果我现在按回,我应该回到ActivityB
(使用相同的实例并保存视图状态)。
是否可以实施?不需要通过launchMode
属性,也许还有另一种方法可以通过 ActivityManager 手动管理活动。
有两个活动:ActivityA
和ActivityB.
从ActivityA
我要去ActivityB
。然后,我选择一些列表项并返回Activity A
(相同实例)选择的数据。最困难的是:如果我现在按回,我应该回到ActivityB
(使用相同的实例并保存视图状态)。
是否可以实施?不需要通过launchMode
属性,也许还有另一种方法可以通过 ActivityManager 手动管理活动。
在Activity 的onActivtyResult中放置布尔标志,以便您可以在从 Activity B 中选择数据后检查它是否出现,并在Activity A的onBackPressed中启动Activity B
像这样
boolean flag = false;
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
// TODO Auto-generated method stub
super.onActivityResult(requestCode, resultCode, data);
flag = true;
}
@Override
public void onBackPressed() {
// TODO Auto-generated method stub
if(flag)
{
//Start Activity B
}
else
{
// finish this activity
}
}
使用 startActivityForResult 从活动 A 启动的活动 B 中获取结果。活动 B 完成后返回结果。