关于Activity的四种启动方式,就不用我多说了。
使用singleTask模式调用已经启动过的Activity时,该Activity不会再去走OnCreate()。
而很多朋友都把Bundle取值放在onCreate()内处理,那当然现在也就取不到值了。
以下是取值示例。(注意!!这里的 intent 是onNewIntent的传参的那个intent,不是getIntent()获取来的!)
@Override
protected void onNewIntent(Intent intent) {
Bundle bundle = intent.getExtras();
if (bundle != null) {
searchGoodsName=bundle.getString("myKey");
}
initView();
super.onNewIntent(intent);
}
应该使用onNewIntent的传参的那个intent,这样就可以得到从另一个页面传来的值了。