我有2个活动,Activity1和Activity2.
在Activity1我有一个按钮和TextView的.单击按钮时,将启动Activity2.
在Activity2我的EditText中.
我想显示从检索到的数据的EditText在活性2中的TextView在活性1当从压回活性2.
有人可以帮助我使用代码来完成这项工作吗?
我按下BACK按钮后尝试setResult.我打电话给onDestroy
Intent data = new Intent();
setResult(RESULT_OK, data)
Run Code Online (Sandbox Code Playgroud)
但是当涉及到
onActivityResult(int requestCode, int resultCode, Intent data)
Run Code Online (Sandbox Code Playgroud)
resultCode为0(RESULT_CANCELED),数据为"null".
那么,如何通过BACK按钮终止活动传递结果?
如何将值从一个屏幕传递到其上一个屏幕?
考虑这种情况:我有两个活动.第一个屏幕有一个TextView按钮,第二个活动有一个EditText按钮.
如果我单击第一个按钮,则必须移至第二个活动,此处用户必须在文本框中键入内容.如果他按下第二个屏幕上的按钮,则文本框中的值应移至第一个活动,并应显示在第一个活动中TextView.
有没有办法在按下后退时将更新的数据发送到父活动?我想更新捆绑包中的数据,但我不知道如何访问它.
例如,我有一个图库活动,可以打开图像查看器.假设用户滚动了十几个图像,然后退回到图库.使用他们查看的最后一张图像更新图库中的焦点图像是理想的.
目前,如果没有全球化的设置,我无法想到如何做到这一点.
这是我想做的伪代码(虽然这显然不起作用):
儿童:
@Override
public void onBackPressed() {
getIntent().setData(currentImage); // Not the right intent, obviously
super.onBackPressed();
}
Run Code Online (Sandbox Code Playgroud)
家长:
@Override
public void onResume()
{
super.onResume();
Uri photoFocus = getIntent().getData();
if (photoFocus != null)
setPhotoFocus(photoFocus);
}
Run Code Online (Sandbox Code Playgroud)