Android 来自ActivityGroup的startActivityForResult
我正在使用ActivityGroup。我使用ActivityGroup中的以下代码替换视图并启动新活动Android 来自ActivityGroup的startActivityForResult,android,android-layout,android-intent,Android,Android Layout,Android Intent,我正在使用ActivityGroup。我使用ActivityGroup中的以下代码替换视图并启动新活动 Intent i = new Intent(SummaryCostScreen.this,PermissionsScreen.class); replaceContentView("activity1",i); public void replaceContentView(String id, Intent newIntent) { View view = getLocalActiv
Intent i = new Intent(SummaryCostScreen.this,PermissionsScreen.class);
replaceContentView("activity1",i);
public void replaceContentView(String id, Intent newIntent) {
View view = getLocalActivityManager().startActivity(id,
newIntent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP)).getDecorView();
}
上述代码的问题是,我需要用startActivityForResult代替startActivity,因为我需要在从启动的活动返回时更新启动器活动的UI
Intent i = new Intent(SummaryCostScreen.this,PermissionsScreen.class);
replaceContentView("activity1",i);
public void replaceContentView(String id, Intent newIntent) {
View view = getLocalActivityManager().startActivity(id,
newIntent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP)).getDecorView();
}
getLocalActivityManager()没有startActivityForResult。我应该如何解决这种情况,以便能够从onActivityResult更新UI
非常感谢您的帮助
PS:我无法更改启动新屏幕的replaceContentView方法,因为这已经在许多其他地方使用过,这是我需要调用startActivityForResult的唯一场景将注释转换为答案,
尝试使用
onResume()
更新SummerCostScreen的UI
您可以使用onResume()
更新SummerCostScreen的UI
无论我在onactivityresult中拥有什么,当我将其粘贴到onResume中时,它都不会更新UI。因此,它没有按照您建议的方式工作。放置一个调试器并检查,它是否正在进入onResume
。对不起,我的错误。成功了。还有一个问题,这是有效的方法吗?因为,我必须在被调用的活动中维护一个静态bolean变量,并在调用方活动中跟踪和更新它的状态?使用intent extra发送它的状态并基于此进行更新。好的,我将发布与答案相同的内容