首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >安卓开发:尝试getStringExtra()时使用java NullPointerException

安卓开发:尝试getStringExtra()时使用java NullPointerException
EN

Stack Overflow用户
提问于 2010-11-07 06:29:33
回答 1查看 1.9K关注 0票数 1

在我的主活动中,我有以下代码来调用我的FileBrowser活动:

代码语言:javascript
复制
  Intent newFileIntent = new Intent(getBaseContext(), FileBrowser.class);
  newFileIntent.putExtra("action", "browseDirectories");
  startActivityForResult(newFileIntent, 2);

但是当这段代码执行时,我的应用强制关闭。我再次运行应用程序,这一次打开了DDMS来查找错误,它是这样的:

代码语言:javascript
复制
11-06 22:01:04.892: ERROR/AndroidRuntime(28287): Caused by: java.lang.NullPointerException
11-06 22:01:04.892: ERROR/AndroidRuntime(28287):     at com.alexprice.devpad.FileBrowser.<init>(FileBrowser.java:17)

下面是第17行(位于onCreate之外):

代码语言:javascript
复制
private String action = getIntent().getStringExtra("action");

怎么了?我不能在startActivityForResult中使用putExtra吗?putExtra只能与startActivity一起使用吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2010-11-07 06:51:04

尝试在onCreate()或任何方法中移动声明,这将确保您可以访问意图数据。在onCreate()之前声明变量,从而在任何其他方法之前声明变量,您将无法访问intent额外的内容。

将第17行保留为private String action;

在onCreate()内部

代码语言:javascript
复制
action = getIntent().getStringExtra("action");
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4115508

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档