Android 为什么每次我实现这个逻辑时我的应用程序都会崩溃?
应用程序中有多个cardView,单击每张卡即可启动新的意向。同样在启动Intent之前,我要传递一个额外的消息 在我的另一个活动中,我创建了一个标题数组,在这里我存储了在这个活动中收到的所有可能的值 现在我运行for循环,查看接收到的值,并相应地执行函数 我做错了什么?如何纠正 第一个反面: 从 到Android 为什么每次我实现这个逻辑时我的应用程序都会崩溃?,android,android-intent,nullpointerexception,Android,Android Intent,Nullpointerexception,应用程序中有多个cardView,单击每张卡即可启动新的意向。同样在启动Intent之前,我要传递一个额外的消息 在我的另一个活动中,我创建了一个标题数组,在这里我存储了在这个活动中收到的所有可能的值 现在我运行for循环,查看接收到的值,并相应地执行函数 我做错了什么?如何纠正 第一个反面: 从 到 if ("AltE".equalsIgnoreCase(a1)) { 因为“AltE”将不等于null 将使它停止崩溃 崩溃的另一个原因是getStringExtra返回默认的null 您
if ("AltE".equalsIgnoreCase(a1)) {
因为“AltE”将不等于null
将使它停止崩溃
崩溃的另一个原因是getStringExtra返回默认的null
您正在检查每个标题,而不仅仅是一个标题。
因此根据你的故事,对于“Alt.English2013”
你没有一个值
String[] title = {
"AltE",
"Alt.English2013"
};
Intent intent = getIntent();
for (int i = 0; i <= title.length; i++) {
Log.e("Length ", String.valueOf(title.length));
a1 = intent.getStringExtra(title[i]);
if (a1.equalsIgnoreCase("AltE")) {
String pdf = "https://www.researchgate.net/STUDIES.pdf";
webView.loadUrl("http://docs.google.com/viewer?url=" + pdf);
webView.setWebViewClient(new WebViewClient() {
public void onPageFinished(WebView view, String url) {
// do your stuff here
progressbar.setVisibility(View.GONE);
}
});
} else {
Toast.makeText(this, "In Else", Toast.LENGTH_SHORT).show();
}
Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'boolean java.lang.String.equalsIgnoreCase(java.lang.String)' on a null object reference
if (a1.equalsIgnoreCase("AltE")) {
if ("AltE".equalsIgnoreCase(a1)) {