一个很简单的程序,一直报空指针错误,刚开始学,百度自己试了很久都改不出来,求大神指点
package com.sample.test02;

import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.view.Window;
import android.widget.Button;
import android.widget.Toast;

public class FirstB extends Activity{
    protected void onCreate(Bundle savedInstanceState){
            super.onCreate(savedInstanceState);
            requestWindowFeature(Window.FEATURE_CONTEXT_MENU);
            setContentView(com.sample.test02.R.layout.first_layout);
           Button butt=(Button)findViewById(com.sample.test02.R.id.button_1);
           butt.setOnClickListener(new View.OnClickListener() {

            @Override
            public void onClick(View v) {
                // TODO Auto-generated method stub
                Toast.makeText(FirstB.this,"@+string/bt",Toast.LENGTH_SHORT).show();
            }
        });
        }

报 butt.setOnClickListener(new View.OnClickListener() { 这一行空指针错误

5个回答

Button butt=(Button)findViewById(com.sample.test02.R.id.button_1);
这里没有找到id叫button_1的按钮

sinat_33451927
不吃洋葱 我按ctrl可以点进去到定义button_1的布局文件,问题应该不是这个吧
3 年多之前 回复

这是logcat error给出的报错, butt.setOnClickListener(new View.OnClickListener() { 这个是十六行
10-05 11:45:06.951: E/AndroidRuntime(17114): FATAL EXCEPTION: main
10-05 11:45:06.951: E/AndroidRuntime(17114): Process: com.sample.test02, PID: 17114
10-05 11:45:06.951: E/AndroidRuntime(17114): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.sample.test02/com.sample.test02.FirstB}: java.lang.NullPointerException
10-05 11:45:06.951: E/AndroidRuntime(17114): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2372)
10-05 11:45:06.951: E/AndroidRuntime(17114): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2424)
10-05 11:45:06.951: E/AndroidRuntime(17114): at android.app.ActivityThread.access$800(ActivityThread.java:154)
10-05 11:45:06.951: E/AndroidRuntime(17114): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1347)
10-05 11:45:06.951: E/AndroidRuntime(17114): at android.os.Handler.dispatchMessage(Handler.java:110)
10-05 11:45:06.951: E/AndroidRuntime(17114): at android.os.Looper.loop(Looper.java:193)
10-05 11:45:06.951: E/AndroidRuntime(17114): at android.app.ActivityThread.main(ActivityThread.java:5339)
10-05 11:45:06.951: E/AndroidRuntime(17114): at java.lang.reflect.Method.invokeNative(Native Method)
10-05 11:45:06.951: E/AndroidRuntime(17114): at java.lang.reflect.Method.invoke(Method.java:515)
10-05 11:45:06.951: E/AndroidRuntime(17114): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:835)
10-05 11:45:06.951: E/AndroidRuntime(17114): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:651)
10-05 11:45:06.951: E/AndroidRuntime(17114): at dalvik.system.NativeStart.main(Native Method)
10-05 11:45:06.951: E/AndroidRuntime(17114): Caused by: java.lang.NullPointerException
10-05 11:45:06.951: E/AndroidRuntime(17114): at com.sample.test02.FirstB.onCreate(FirstB.java:16)
10-05 11:45:06.951: E/AndroidRuntime(17114): at android.app.Activity.performCreate(Activity.java:5360)
10-05 11:45:06.951: E/AndroidRuntime(17114): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1088)
10-05 11:45:06.951: E/AndroidRuntime(17114): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2336)
10-05 11:45:06.951: E/AndroidRuntime(17114): ... 11 more

FristB没有注册吧

sinat_33451927
不吃洋葱 回复old四的four: 比我厉害:)
3 年多之前 回复
Mr_wzc
吴祖昌 回复不吃洋葱: 并不是大神,也是菜鸟一个![图片说明](http://forum.csdn.net/PointForum/ui/scripts/csdn/Plugin/001/face/20.gif)
3 年多之前 回复
sinat_33451927
不吃洋葱 回复old四的four: 是的,我找到错误了, 看来果然还是要细心,谢谢大神
3 年多之前 回复
Mr_wzc
吴祖昌 回复不吃洋葱: 检查一下XML和配置文件是不是那里写错了
3 年多之前 回复
sinat_33451927
不吃洋葱 注册了的,刚开始写加入按钮显示是正确的,但写监听方法就报空指针错误了,求解,哭晕:-(
3 年多之前 回复

你就不能把所有文件的代码都发来嘛

sinat_33451927
不吃洋葱 找到错误了,谢谢,我布局文件里吧android:id打成了android:name,已经解决了,谢谢
3 年多之前 回复

id打成了android:name 很无语

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐