本文介绍了检查是否设置了额外功能的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
有什么方法可以在启动活动"时检查是否通过了额外的活动?
Is there any way to check if an extra has been passed when starting an Activity?
我想做类似的事情(在活动"中的onCreate()
上):
I would like to do something like (on the onCreate()
in the Activity):
Bundle extras = getIntent().getExtras();
String extraStr = extras.getString("extra");
if (extraStr == null) {
extraStr = "extra not set";
}
但这会抛出java.lang.NullPointerException
.
谢谢.
推荐答案
使用 Intent.hasExtra(String name)
,以检查是否在意图中传递了带有name
的附加内容.
示例:
Intent intent = getIntent();
if (intent.hasExtra("bookUrl")) {
bookUrl = b.getString("bookUrl");
} else {
// Do something else
}
此外,请使用 Intent.getStringExtra(String name)
直接用于处理NullPointerException
的意图,如果没有传递任何额外内容.
Also, use Intent.getStringExtra(String name)
directly on the intent to handle the NullPointerException
if no extras were passed.
这篇关于检查是否设置了额外功能的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!