Android 当我按下第一项时,操作栏异常
我写了一个动作条,太简单了。当我点击某人时,他们会进入相同的活动。在意图消息上,只有不同的消息。我像往常一样做了。我的问题是,当我点击第一个项目时,会出现异常,但第二个项目完全正常工作。我做错了什么?我怎样才能修好它 我的目的是:我想在我的操作栏的项目上发送此活动的消息。İf message 123我将执行任何操作,但如果其他项目已单击,我将执行不同的操作。我只想找到用户单击的项目 Atolye_action_bar.class:Android 当我按下第一项时,操作栏异常,android,android-intent,android-actionbar,Android,Android Intent,Android Actionbar,我写了一个动作条,太简单了。当我点击某人时,他们会进入相同的活动。在意图消息上,只有不同的消息。我像往常一样做了。我的问题是,当我点击第一个项目时,会出现异常,但第二个项目完全正常工作。我做错了什么?我怎样才能修好它 我的目的是:我想在我的操作栏的项目上发送此活动的消息。İf message 123我将执行任何操作,但如果其他项目已单击,我将执行不同的操作。我只想找到用户单击的项目 Atolye_action_bar.class: import android.graphics.Color; i
import android.graphics.Color;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import com.muddzdev.styleabletoastlibrary.StyleableToast;
public class Atolyem_action_bar extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_atolyem_action_bar);
Bundle exras = getIntent().getExtras();
String value = exras.getString("gzsz");
String value_anlamsız_ıntent_message = exras.getString("anlamsız");
if (value.equals("123")){
new StyleableToast
.Builder(getApplicationContext())
.text("Doğru")
.textColor(Color.BLACK)
.backgroundColor(Color.RED)
.show();
}
}
}
采取信息的形式:
Bundle yeni = getIntent().getExtras();
String value_anlamsız_ıntent_message = yeni.getString("anlamsız");
Bundle exras = getIntent().getExtras();
String value = exras.getString("gzsz");
// İt is true.
if (value != null && value.equals("123")){
new StyleableToast
.Builder(getApplicationContext())
.text("Doğru")
.textColor(Color.BLACK)
.backgroundColor(Color.RED)
.show();
}
// it is not working.
if (value_anlamsız_ıntent_message != null && value_anlamsız_ıntent_message.equals("selam")){
new StyleableToast
.Builder(getApplicationContext())
.text("yalan")
.textColor(Color.BLACK)
.backgroundColor(Color.RED)
.show();
}
这是我的物品:
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:android="http://schemas.android.com/apk/res/android">
<item android:title="Sadace Anlamsız kelimeler"
android:id="@+id/anlamsız_atolyem"
app:showAsAction="never"
android:orderInCategory="100"
/>
<item android:title="Sadace Gözsüz kelimeler"
android:id="@+id/gözsüz_atolyem"
app:showAsAction="never"
android:orderInCategory="100"/>
</menu>
以下是我的例外:
03-07 23:44:24.717 3654-3654/something.about.berkay.kkk E/AndroidRuntime: FATAL EXCEPTION: main
Process: something.about.berkay.kkk, PID: 3654
java.lang.RuntimeException: Unable to start activity ComponentInfo{something.about.berkay.kkk/something.about.berkay.kkk.Atolyem_action_bar}: java.lang.NullPointerException: Attempt to invoke virtual method 'boolean java.lang.String.equals(java.lang.Object)' on a null object reference
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2984)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3045)
at android.app.ActivityThread.-wrap14(ActivityThread.java)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1642)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:154)
at android.app.ActivityThread.main(ActivityThread.java:6776)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1520)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1410)
Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'boolean java.lang.String.equals(java.lang.Object)' on a null object reference
at something.about.berkay.kkk.Atolyem_action_bar.onCreate(Atolyem_action_bar.java:25)
at android.app.Activity.performCreate(Activity.java:6955)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1126)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2927)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3045)
at android.app.ActivityThread.-wrap14(ActivityThread.java)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1642)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:154)
at android.app.ActivityThread.main(ActivityThread.java:6776)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1520)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1410)
如果未设置额外的with键“gzsz”,则值
为null。在调用equals之前执行null检查,如下所示:
if (value != null && value.equals("123")){
...
异常是什么?我已经编辑了我的问题。错误是什么?你说它会给你一个异常。对不起。我在设置我的异常时批准了编辑建议。你现在可以看到了。你能看到我的代码中有错误吗?是的,你的代码已经工作了。谢谢你的帮助。它将传递到其他活动。但是现在关于mes还有一个不同的问题sage意图。第一条消息正确工作,但第二条(if语句)不起作用。顺便问一下,这是什么原因。我不明白。你想实现什么?我正在做一个动作栏。这个动作栏有两个项目。当我单击这些项目时,它们会发送到不同的消息到Atolyem_action_bar.class。我将根据这些消息设计我的Atolyem_action_bar.layout。嗯,这是什么什么是假?然后是空检查还是等于检查?
if (value != null && value.equals("123")){
...