活动myActivity1:
Intent i = new Intent(this, myActivity2.class);
i.putExtra("type", type);
if(type == 1)
{
i.putExtra("namesArray", myArray);
}
startActivityForResult(i, 1);
活动myActivity2:
//inside onResume()
if(getIntent().hasExtra("type"))
{
Log.i(tag, "Has extra");
}
else
{
Log.i(tag, "No extra type");
}
我总是得到"No extra type"
为什么?
答案 0 :(得分:1)
如果在接收意图之前先创建了myActivity2,则getIntent()
可能会返回创建该活动的原始意图,这可能没有设置任何额外内容。
尝试以下方法刷新意图:
@Override
protected void onNewIntent(Intent intent) {
super.onNewIntent(intent);
setIntent(intent);
}