0
Intent intent = new Intent(this,AnotherClass.class);
intent.putExtra("Name", "foo");
setResult(RESULT_OK, null);

super.onActivityResult(requestCode, resultCode, data);
    switch (requestCode) {
      case (1): {
        TextView textView = (TextView) findViewById(R.id.TextView01);
        if (resultCode == Activity.RESULT_OK) {
          textView.setText("Data" + data.getStringExtra("Name"));
        }

我究竟做错了什么?

4

1 回答 1

1

有些事情不对劲。您没有在方法 setResult 中设置 Intent。看看这个:http: //developer.android.com/reference/android/app/Activity.html#setResult(int,%20android.content.Intent)

您应该传递意图,而不是 null。

然后从 onActivityOnResult 中删除 super。您不是在调用 onActivityOnResult,而是在调用它。

然后你正在切换 requestCode。你确定 RESULT_OK 是 1 吗?否则它将无法正常工作。所以最好也使用常量 RESULT_OK 而不是 1。

于 2010-06-01T19:35:13.530 回答