获得额外意图时的空指针
Posted
技术标签:
【中文标题】获得额外意图时的空指针【英文标题】:Null pointer when getting intent extra 【发布时间】:2011-09-30 14:08:43 【问题描述】:在运行我的应用程序时,有时在检索与意图绑定的值时会得到一个空指针
将其设置在一个类中
private void start()
Intent i = new Intent(this,Tabs.class);
i.putExtra("helper", checked);
startActivity(i);
checked 是一个布尔值,永远不会为空
在其他类中获得它
private void getExtra()
Bundle extras = getIntent().getExtras();
mExtra = extras.getBoolean("helper");
关于为什么它有时会为空的任何想法?
【问题讨论】:
当您在其他活动上或通过任务管理器点击“返回”按钮后导航回此活动时,是否会发生这种情况? 此时在应用程序中点击后退按钮只会退出应用程序,因为我将之前的活动设置为无历史记录 【参考方案1】:使用getBooleanExtra()
从intent中获取值
示例代码
boolean mExtra = getIntent().getBooleanExtra("helper", false);
【讨论】:
它不会返回 null,他/她正在获取 null。此外,如果键“helper”的数据存在,它将返回 true。如果键 "helper" 没有数据,它将返回 false 为什么没有钥匙呢?我有一种感觉,有时可能是钥匙不存在的实际问题以上是关于获得额外意图时的空指针的主要内容,如果未能解决你的问题,请参考以下文章
从 Android 的 LocationManager 请求 getLastKnownLocation 时的空指针