2014-06-07 2 views
0

onClickListener를 구현하려고 할 때 항상 오류가 발생합니다.onclicklistener를 구현하면 Android 앱이 다운 됨

이 내 코드

protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 

    Button btn_submit = (Button) findViewById(R.id.btn_submit); 
    btn_submit.setOnClickListener(new OnClickListener() { 

     @Override 
     public void onClick(View v) { 
      // TODO Auto-generated method stub 

     } 
    });  

이며, 여기 내 XML 코드 : 로그 캣

06-07 02:54:05.901: E/AndroidRuntime(19667): FATAL EXCEPTION: main 
06-07 02:54:05.901: E/AndroidRuntime(19667): Process: com.gonzalo.ejemplo, PID: 19667 
06-07 02:54:05.901: E/AndroidRuntime(19667): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.gonzalo.ejemplo/com.gonzalo.ejemplo.MainActivity}: java.lang.NullPointerException 
06-07 02:54:05.901: E/AndroidRuntime(19667): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2305) 
06-07 02:54:05.901: E/AndroidRuntime(19667): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2363) 
06-07 02:54:05.901: E/AndroidRuntime(19667): at android.app.ActivityThread.access$900(ActivityThread.java:161) 
06-07 02:54:05.901: E/AndroidRuntime(19667): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1265) 
06-07 02:54:05.901: E/AndroidRuntime(19667): at android.os.Handler.dispatchMessage(Handler.java:102) 
06-07 02:54:05.901: E/AndroidRuntime(19667): at android.os.Looper.loop(Looper.java:157) 
06-07 02:54:05.901: E/AndroidRuntime(19667): at android.app.ActivityThread.main(ActivityThread.java:5356) 
06-07 02:54:05.901: E/AndroidRuntime(19667): at java.lang.reflect.Method.invokeNative(Native Method) 
06-07 02:54:05.901: E/AndroidRuntime(19667): at java.lang.reflect.Method.invoke(Method.java:515) 
06-07 02:54:05.901: E/AndroidRuntime(19667): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1265) 
06-07 02:54:05.901: E/AndroidRuntime(19667): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1081) 
06-07 02:54:05.901: E/AndroidRuntime(19667): at dalvik.system.NativeStart.main(Native Method) 
06-07 02:54:05.901: E/AndroidRuntime(19667): Caused by: java.lang.NullPointerException 
06-07 02:54:05.901: E/AndroidRuntime(19667): at com.gonzalo.ejemplo.MainActivity.onCreate(MainActivity.java:27) 
06-07 02:54:05.901: E/AndroidRuntime(19667): at android.app.Activity.performCreate(Activity.java:5426) 
06-07 02:54:05.901: E/AndroidRuntime(19667): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1105) 
06-07 02:54:05.901: E/AndroidRuntime(19667): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2269) 
06-07 02:54:05.901: E/AndroidRuntime(19667): ... 11 more 
06-07 02:59:05.974: I/Process(19667): Sending signal. PID: 19667 SIG: 9 

그래서 .. 내가 문제를 해결할 수있는 방법을 어떤 생각?

감사합니다.

+0

내 생각 엔 최신 ADT를 사용하고 있으며 그 안에'Fragment'가있는 새 프로젝트를 만들었습니다. 이 경우'Button '은 조각 XML 파일에 있고 활동 파일은 아닙니다. 'Button' 코드를'Fragment'로 옮겨야합니다. – Squonk

답변

1

findViewById은 아마도 null을 반환합니다. 레이아웃에 버튼이 android:id="@+id/btn_submit"인지 확인하십시오.

1

이 변수가 문제 일 수 있습니다. 에서

Button btn_submit = (Button) findViewById(R.id.btn_submit); 

확인하여 btn_submit 존재한다면, 아마 다른 이름을 가지고 activity_main.xml.

+0

감사합니다. 나는 그 활동을 혼란스럽게 만들었습니다. 그 이유가 나를 귀환시킵니다. – gon250

관련 문제