在Android的onActivityResult()方法中,如果始终返回null,可能是因为没有正确地设置返回结果。以下是解决方法的代码示例:
// 调用startActivityForResult()方法
Intent intent = new Intent(this, SecondActivity.class);
int requestCode = 1; // 设置一个非零的requestCode
startActivityForResult(intent, requestCode);
// 在被启动的Activity中设置返回结果
Intent resultIntent = new Intent();
String data = "返回的数据";
resultIntent.putExtra("result", data);
setResult(Activity.RESULT_OK, resultIntent);
finish();
// 在调用onActivityResult()方法时处理返回结果
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (requestCode == 1 && resultCode == Activity.RESULT_OK) {
if (data != null) {
String result = data.getStringExtra("result");
// 对返回的结果进行处理
}
}
}
通过正确设置返回结果,您应该能够在onActivityResult()方法中获得正确的数据。