小编典典

按下后如何将数据从第二个活动传递到第一个活动?\- 安卓

all

我有 2 个活动, Activity1Activity2

Activity1我有一个 ButtonTextView 。单击按钮时, Activity2 将启动。

Activity2我有一个 EditText

当从Activity2* 按下返回时,我想在 Activity1TextView 中显示从 Activity2中的
EditText 检索到的数据。
***

有人可以帮我编写代码来完成这项工作吗?


阅读 160

收藏
2022-06-30

共1个答案

小编典典

启动
Activity2startActivityForResult并使用setResult将数据从
Activity2 发送回 Activity1 的方法。在 Activity1 中,您需要覆盖以使用
Activity2中的数据onActivityResult进行更新。TextView``EditText

例如:

Activity1 中,将 Activity2 启动为:

Intent i = new Intent(this, Activity2.class);
startActivityForResult(i, 1);

Activity2 中,setResult用于发回数据:

Intent intent = new Intent();
intent.putExtra("editTextValue", "value_here")
setResult(RESULT_OK, intent);        
finish();

Activity1 中,接收数据onActivityResult

public void onActivityResult(int requestCode, int resultCode, Intent data) {
    super.onActivityResult(requestCode, resultCode, data);
    if (requestCode == 1) {
         if(resultCode == RESULT_OK) {
             String strEditText = data.getStringExtra("editTextValue");
         }     
    }
}

如果可以,还可以使用SharedPreferences在活动之间共享数据。

2022-06-30