2013-02-08 6 views
0

나는 프로그래밍에 익숙하지 않고 나를 막아주는 단순한 도로 블록에 충돌했다. 내 주요 활동에서 버튼을 눌러 다른 활동을 불러 오려고합니다. 나는 연구했으나 아직 일할 무언가를 찾지 못했다. (아마도 정말로 간단하고 어리석은). 어떤 도움을 주시면 감사하겠습니다. 저의 주요 활동을위한 코드를 포함 시켰습니다. 주셔서 감사합니다새로운 활동을 불러오는 버튼을 얻을 수 없다.

package com.example.valentinetimer; 


import android.app.Activity; 
import android.content.Intent; 
import android.os.Bundle; 
import android.util.Log; 
import android.view.View; 
import android.view.View.OnClickListener; 
import android.widget.Button; 


public class CardFront extends Activity implements OnClickListener { 

    private static final String TAG = null; 

    Button openButton; 

    @Override 
    public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.cardfrontxml); 

    Log.d(TAG, "onCreate"); 

    //Button 
    openButton = (Button) findViewById(R.id.openButton); 
    openButton.setOnClickListener(this); 

    this.setContentView(R.layout.cardfrontxml); 
    this.openButton = (Button)this.findViewById(R.id.openButton); 
    this.openButton.setOnClickListener(new OnClickListener() 
    { 
     @Override 
     public void onClick(View v) 
     { 
      Log.d(TAG, "Click Event"); 

      Intent intent = new Intent (null, CardContent.class); 
      startActivity (intent); 
     } 
    }); 
    //End Button 

} 

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

로그 캣 :

02-08 10:18:51.927: E/AndroidRuntime(2494): FATAL EXCEPTION: main 
02-08 10:18:51.927: E/AndroidRuntime(2494): android.content.ActivityNotFoundException:   Unable to find explicit activity class {com.example.valentinetimer/com.example.valentinetimer.CardContent}; have you declared this activity in your AndroidManifest.xml? 
02-08 10:18:51.927: E/AndroidRuntime(2494):  at android.app.Instrumentation.checkStartActivityResult(Instrumentation.java:1504) 
02-08 10:18:51.927: E/AndroidRuntime(2494):  at android.app.Instrumentation.execStartActivity(Instrumentation.java:1382) 
02-08 10:18:51.927: E/AndroidRuntime(2494):  at android.app.Activity.startActivityForResult(Activity.java:3095) 
02-08 10:18:51.927: E/AndroidRuntime(2494):  at android.app.Activity.startActivity(Activity.java:3201) 
02-08 10:18:51.927: E/AndroidRuntime(2494):  at com.example.valentinetimer.CardFront$1.onClick(CardFront.java:42) 
02-08 10:18:51.927: E/AndroidRuntime(2494):  at android.view.View.performClick(View.java:3110) 
02-08 10:18:51.927: E/AndroidRuntime(2494):  at android.view.View$PerformClick.run(View.java:11928) 
02-08 10:18:51.927: E/AndroidRuntime(2494):  at android.os.Handler.handleCallback(Handler.java:587) 
02-08 10:18:51.927: E/AndroidRuntime(2494):  at android.os.Handler.dispatchMessage(Handler.java:92) 
02-08 10:18:51.927: E/AndroidRuntime(2494):  at android.os.Looper.loop(Looper.java:132) 
02-08 10:18:51.927: E/AndroidRuntime(2494):  at android.app.ActivityThread.main(ActivityThread.java:4025) 
02-08 10:18:51.927: E/AndroidRuntime(2494):  at java.lang.reflect.Method.invokeNative(Native Method) 
02-08 10:18:51.927: E/AndroidRuntime(2494):  at java.lang.reflect.Method.invoke(Method.java:491) 
02-08 10:18:51.927: E/AndroidRuntime(2494):  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:841) 
02-08 10:18:51.927: E/AndroidRuntime(2494):  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:599) 
02-08 10:18:51.927: E/AndroidRuntime(2494):  at dalvik.system.NativeStart.main(Native Method) 
+0

'openButton'을 두 번 설정 하시겠습니까? 두 개의 다른'onClick()'?? odd –

+1

'당신의 AndroidManifest.xml에서이 활동을 선언하셨습니까? '???? –

답변

1

문제는 CardContent 클래스가 매니페스트에 올바르게 지정되지 않았기 때문입니다. 응용 프로그램 태그의 매니페스트에 다음을 추가하십시오.

<activity 
    android:name=".CardContent"> 
</activity> 
+0

알았어요. 둘 다 감사합니다! – user2055166

2

대신 :

Intent intent = new Intent (null, CardContent.class); 

사용 :

Intent intent = new Intent (CardFront.this, CardContent.class); 

당신에게 "널 포인터"를 일으키는 또 다른 실수를 을 너는 우리에게 노력하고있어. "setContentView"를 호출하기 전에 "findViewById"를 호출하면 액티비티의 레이아웃과 관련이있는 항목에 액세스하기 전에 "setContentView"를 호출해야합니다. 좋은 방법은 "super.onCreate"라인 바로 뒤에 넣는 것입니다.

또 다른 것은 태그가 Null이 아닌 실제 문자열 값이되도록 변경하십시오.

로그 고양이를보고 편집하십시오. 두 번째 활동도 매니페스트에 선언해야합니다. 그것을 거기에 추가하십시오.

+0

고맙습니다.하지만 널 포인터 예외가 발생했습니다. – user2055166

+0

널 포인터 예외를 게시하십시오. – WindyB

+0

내 편집보기 .... – Sean

관련 문제