我如何解决这个问题:在发生意图崩溃时出现空指针异常 [英] How do I fix this: null pointer exception when making an intent crash

查看:96
本文介绍了我如何解决这个问题:在发生意图崩溃时出现空指针异常的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

I'm trying to make an android app but I encoutered this error and I don't know what to do and why is it showing from the first place, the app crashes with the following error in the log:





E/AndroidRuntime: FATAL EXCEPTION: main
                  Process: com.example.ramy.medicare, PID: 2487
                  java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.ramy.medicare/com.example.ramy.medicare.Profile.materialtabs.activity.MainActivity}: java.lang.NullPointerException: Attempt to invoke virtual method 'void android.widget.Button.setOnClickListener(android.view.View$OnClickListener)' on a null object reference
                      at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2665)
                      at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2726)
                      at android.app.ActivityThread.-wrap12(ActivityThread.java)
                      at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1477)
                      at android.os.Handler.dispatchMessage(Handler.java:102)
                      at android.os.Looper.loop(Looper.java:154)
                      at android.app.ActivityThread.main(ActivityThread.java:6119)
                      at java.lang.reflect.Method.invoke(Native Method)
                      at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:886)
                      at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:776)
                   
***Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'void android.widget.Button.setOnClickListener(android.view.View$OnClickListener)' on a null object reference
                      at com.example.ramy.medicare.Profile.materialtabs.activity.MainActivity.onCreate(MainActivity.java:43)***


                      at android.app.Activity.performCreate(Activity.java:6679)
                      at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1118)
                      at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2618)
                      at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2726) 
                      at android.app.ActivityThread.-wrap12(ActivityThread.java) 
                      at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1477) 
                      at android.os.Handler.dispatchMessage(Handler.java:102) 
                      at android.os.Looper.loop(Looper.java:154) 
                      at android.app.ActivityThread.main(ActivityThread.java:6119) 
                      at java.lang.reflect.Method.invoke(Native Method) 
                      at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:886) 
                      at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:776) 


here is the code:

    package com.example.ramy.medicare.Profile.materialtabs.activity;
    
    import android.content.Intent;
    import android.os.Bundle;
    import android.support.v7.app.AppCompatActivity;
    import android.support.v7.widget.Toolbar;
    import android.view.LayoutInflater;
    import android.view.View;
    
    import android.widget.Button;
    
    import com.example.ramy.medicare.R;
    
    
    
    
    public class MainActivity extends AppCompatActivity implements View.OnClickListener {
    
    
        private Button  btnScrollableTabs_b,  btnIconTabs_b, btnCustomIconTextTabs_b;
    
    
    
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
    //        toolbar = (Toolbar) findViewById(R.id.toolbar);
    //        setSupportActionBar(toolbar);
    
    
    
    
    
    
    
    
            btnScrollableTabs_b = (Button) findViewById(R.id.btnScrollableTabs);
            btnIconTabs_b = (Button) findViewById(R.id.btnIconTabs);
            btnCustomIconTextTabs_b = (Button) findViewById(R.id.btnCustomIconTabs);
    
            //at these lines is the error:
            **btnScrollableTabs_b.setOnClickListener(this);   
            btnIconTabs_b.setOnClickListener(this);
            btnCustomIconTextTabs_b.setOnClickListener(this);**
    
    
    
    //        btnSimpleTabs = (Button) findViewById(R.id.btnSimpleTabs);
    //        btnScrollableTabs = (Button) findViewById(R.id.btnScrollableTabs);
    //        btnIconTextTabs = (Button) findViewById(R.id.btnIconTextTabs);
    //        btnIconTabs = (Button) findViewById(R.id.btnIconTabs);
    //        btnCustomIconTextTabs = (Button) findViewById(R.id.btnCustomIconTabs);
    
    //        btnSimpleTabs.setOnClickListener(this);
    
    //        btnScrollableTabs.setOnClickListener(this);
    //        btnIconTextTabs.setOnClickListener(this);
    //        btnIconTabs.setOnClickListener(this);
    //        btnCustomIconTextTabs.setOnClickListener(this);
    
    }
    
        @Override
        public void onClick(View view) {
            switch (view.getId()) {
    
                case R.id.btnScrollableTabs:
                    startActivity(new Intent(MainActivity.this, ScrollableTabsActivity.class));
                    break;
                case R.id.btnIconTabs:
                    startActivity(new Intent(MainActivity.this, IconTabsActivity.class));
                    break;
                case R.id.btnCustomIconTabs:
                    startActivity(new Intent(MainActivity.this, CustomViewIconTextTabsActivity.class));
                    break;
            }
        }
    }

Kindly tell me what to do Im so confused, I instantiated the object so why am i getting this error ???





我的尝试:



我试过修复布局我尝试更改变量,

我尝试了一切,请帮助



What I have tried:

I tried fixing the layout I tried changing the variables,
I tried everything, pls help

推荐答案

OnClickListener)'对空对象引用
在android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2665)
在android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2726)
在android.app.ActivityThread.-wrap12( ActivityThread.java)
在android.app.ActivityThread
OnClickListener)' on a null object reference at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2665) at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2726) at android.app.ActivityThread.-wrap12(ActivityThread.java) at android.app.ActivityThread


H.handleMessage(ActivityThread.java:1477)
在android.os.Handler.dispatchMessage(Handler。 java:102)
在android.os.Looper.loop(Looper。 java:154)
在android.app.ActivityThread.main(ActivityThread.java:6119)
at java.lang.reflect.Method.invoke(Native Method)
at com.android。 internal.os.ZygoteInit
H.handleMessage(ActivityThread.java:1477) at android.os.Handler.dispatchMessage(Handler.java:102) at android.os.Looper.loop(Looper.java:154) at android.app.ActivityThread.main(ActivityThread.java:6119) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.ZygoteInit


MethodAndArgsCaller.run(ZygoteInit.java:886)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:776)

***引起:java.lang.NullPointerException:尝试调用虚方法'void android.widget.Button.setOnClickListener(android.view.View
MethodAndArgsCaller.run(ZygoteInit.java:886) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:776) ***Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'void android.widget.Button.setOnClickListener(android.view.View


这篇关于我如何解决这个问题:在发生意图崩溃时出现空指针异常的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆