onActivityResult()中的getStringExtra()失败

时间:2011-08-01 12:18:22

标签: android android-intent

我需要将其他数据从Intent传输到调用活动。 基本活动执行“startActivityForResult()”。

嵌套活动设置结果并将其他数据放入点击监听器中:

public void onClick(View v) {
     setResult(LOGIN_RESULT_IN);
     LoginActivity.this.getIntent().putExtra("username", userStr);
     LoginActivity.this.getIntent().putExtra("password", passStr);

     LoginActivity.this.finish();
}

调用活动使用以下命令检查数据:

protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    preferences.username = data.getStringExtra("username");
    preferences.password = data.getStringExtra("password");
}

然而,此返回始终为null。为什么不起作用?

1 个答案:

答案 0 :(得分:2)

试试这段代码

public void onClick(View v) {

      Intent intent=new Intent();
      intent.putExtra("username", userStr);
      intent.putExtra("password", passStr);

      setResult(LOGIN_RESULT_IN,intent);
     LoginActivity.this.finish();
}


protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    preferences.username = data.getStringExtra("username");
    preferences.password = data.getStringExtra("password");
}