在我的主活动中,我有以下代码来调用我的FileBrowser活动:
Intent newFileIntent = new Intent(getBaseContext(), FileBrowser.class);
newFileIntent.putExtra("action", "browseDirectories");
startActivityForResult(newFileIntent, 2);但是当这段代码执行时,我的应用强制关闭。我再次运行应用程序,这一次打开了DDMS来查找错误,它是这样的:
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之外):
private String action = getIntent().getStringExtra("action");怎么了?我不能在startActivityForResult中使用putExtra吗?putExtra只能与startActivity一起使用吗?
发布于 2010-11-07 06:51:04
尝试在onCreate()或任何方法中移动声明,这将确保您可以访问意图数据。在onCreate()之前声明变量,从而在任何其他方法之前声明变量,您将无法访问intent额外的内容。
将第17行保留为private String action;
在onCreate()内部
action = getIntent().getStringExtra("action");https://stackoverflow.com/questions/4115508
复制相似问题