Activity中getIntent为什么获取不到值?
【摘要】
Activity有四种启动模式,一般为默认。
当Activity的启动模式为singleTask的时候,通过Intent传值,getIntent是接收不到值的,为null。
因为不同的启动模式,走的方法也不一样。当页面再次被调用的时候,先走onNewIntent方法再走onRestart。
所以需要重写onNewIntent方法,...
Activity有四种启动模式,一般为默认。
当Activity的启动模式为singleTask的时候,通过Intent传值,getIntent是接收不到值的,为null。
因为不同的启动模式,走的方法也不一样。当页面再次被调用的时候,先走onNewIntent方法再走onRestart。
所以需要重写onNewIntent方法,而且此方法在Activity Finish之后是不执行的。
-
//finish之后是不执行的
-
@Override
-
protected void onNewIntent(Intent intent) {
-
super.onNewIntent(intent);
-
setIntent(intent);//设置新的intent
-
-
String data = getIntent().getStringExtra("data");
-
...
-
}
文章来源: blog.csdn.net,作者:yechaoa,版权归原作者所有,如需转载,请联系作者。
原文链接:blog.csdn.net/yechaoa/article/details/63252721
【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)