我正在将上下文从 Activity A传递到页面适配器,并且在该适配器内部我传递了进行调用的 Intent
Intent intent = new Intent(Intent.ACTION_CALL);
intent.setData(Uri.parse("tel:" + number));
intent.putExtra("id",listId.toString());
context.startActivityForResult(intent, 105);
Activity A继承自另一个 Activity B,在该基础 Activity B内,onActivityResult定义为:
@Override
public void onActivityResult(int requestCode, int resultCode, Intent intent) {
super.onActivityResult(requestCode, resultCode, intent);
if (requestCode == 104) {
if (GetLocation.isLocationEnabled(this)) {
<my codes>
}
}
}
在 Activity A内,我的onActivityResult为:
@Override
public void onActivityResult(int requestCode, int resultCode, Intent intent) {
super.onActivityResult(requestCode, resultCode, intent);
if (requestCode == 105) {
Bundle extras=getIntent().getExtras();
String user_Id=extras.getString("id");
}
}
我的user_Id始终为空值,有人可以在这个问题上为我提供帮助吗?
最佳答案
使用intent.getExtras()
而不是getIntent().getExtras()
getIntent()
将为您提供最初启动您的 Activity 的intent
。
关于android - getIntent()。getExtras()在OnActivityResult中传递空值,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/33017117/