有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java澄清了如何使用startActivityForResult将数据发送到之前的活动

我目前正在尝试将数据从子活动发送回其父活动。我用startActivityForResult()去参加我的孩子活动。然而,我无法理解我将如何将我想要的数据放回我的意图,并使我的父活动接收到它。我一直在网上看不同的例子,但我认为这只是抛出了结果变量

据我所知,这是我在将子活动返回到父活动时使用的方法:

         String somestring = "somevalue";
         Intent i = getIntent();

         setResult(RESULT_OK, i);
         finish(); 

我想加载字符串somestring的内容,让它返回到父活动。 如何将其加载回我的家长活动

            startActivityForResult(intent, 1);

最后,我如何在onActivityResult中捕获父活动中的数据

@Override
public void onActivityResult(int requestCode, int resultCode, Intent data){
    super.onActivityResult(requestCode,resultCode,data);


}

共 (1) 个答案

  1. # 1 楼答案

    将数据添加到意图中,就像在任何其他情况下一样:

    Intent intent=new Intent();
    intent.putExtra("ComingFrom", "Hello");
    setResult(RESULT_OK, intent);
    finish();
    

    然后在其他活动的onActivityResult中检索它

    @Override
    public void onActivityResult(int requestCode,int resultCode,Intent data)
    {
         super.onActivityResult(requestCode, resultCode, data);
         String extraData=data.getStringExtra("ComingFrom"));
    }