孩子的StartActivityforResult没有得到结果?

时间:2011-03-17 10:43:06

标签: android android-emulator

HI,

我有tabhost与子活动,从那个子Activity我将开始新的Activity而不是作为子活动,因为我使用方法“startActivityForResult”开始活动,但它不会将结果从新的Activity返回给标签活动的前一个孩子。

我的StartActivity如下,

startActivityForResult((new Intent(tabchild.this,
                    NewInstanceActivity.class)),requestCode);

 protected void onActivityResult(int requestCode,int resultCode,Intent data) {
      if(resultCode==1){
               system.out.println("Activity started");
      }
      else{
          system.out.println("Activity not started");
      }
  }

在NewInstanceActivity.class中,我返回结果如下,

Intent in = new Intent();
setResult(1, in);

但它不起作用。任何人都建议一些技巧来解决这个问题。

由于

1 个答案:

答案 0 :(得分:0)

您需要使用putExtra()来获取您正在寻找的返回值。然后你可以用你给它的名字来引用它,比如“returnedData”


Intent intent= getIntent();
  String msg = intent.getStringExtra("sampleData");
  msg += ", This is my message";
  intent.putExtra("returnedData", msg);
  setResult(RESULT_OK, intent);
  finish();