1. Nimm jetzt an unserem Uhans - 3. ADVENT - Gewinnspiel teil - Alle Informationen findest Du hier!

Unable to start activity ComponentInfo

Dieses Thema im Forum "Android App Entwicklung" wurde erstellt von HeroUser96, 12.11.2010.

  1. HeroUser96, 12.11.2010 #1
    HeroUser96

    HeroUser96 Threadstarter Android-Hilfe.de Mitglied

    Beiträge:
    53
    Erhaltene Danke:
    2
    Registriert seit:
    15.09.2010
    Hallo zusammen!

    Ich habe folgenden Code:

    public class Main extends Activity {
    private Panel panel;
    @Override
    public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    requestWindowFeature(Window.FEATURE_NO_TITLE);
    setContentView(new Panel(this, panel));

    }

    class Panel extends SurfaceView implements SurfaceHolder.Callback {

    private ArrayList<View> _views = new ArrayList<View>();
    private TextView Punkte = new TextView(null);

    public Panel(Context context, Panel panel) {
    super(context);

    _views.add(Punkte);
    panel.addTouchables(_views);

    }


    Wenn ich jetzt versuche zu starten kommt dieser Fehler im LogCat:


    11-12 17:03:12.684: WARN/dalvikvm(8387): threadid=3: thread exiting with uncaught exception (group=0x4001e390)
    11-12 17:03:12.684: ERROR/AndroidRuntime(8387): Uncaught handler: thread main exiting due to uncaught exception
    11-12 17:03:12.724: ERROR/AndroidRuntime(8387): java.lang.RuntimeException: Unable to start activity ComponentInfo{de.test/de.test.Main}: java.lang.NullPointerException
    11-12 17:03:12.724: ERROR/AndroidRuntime(8387): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2596)
    11-12 17:03:12.724: ERROR/AndroidRuntime(8387): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2621)
    11-12 17:03:12.724: ERROR/AndroidRuntime(8387): at android.app.ActivityThread.access$2200(ActivityThread.java:126)
    11-12 17:03:12.724: ERROR/AndroidRuntime(8387): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1932)
    11-12 17:03:12.724: ERROR/AndroidRuntime(8387): at android.os.Handler.dispatchMessage(Handler.java:99)
    11-12 17:03:12.724: ERROR/AndroidRuntime(8387): at android.os.Looper.loop(Looper.java:123)
    11-12 17:03:12.724: ERROR/AndroidRuntime(8387): at android.app.ActivityThread.main(ActivityThread.java:4595)
    11-12 17:03:12.724: ERROR/AndroidRuntime(8387): at java.lang.reflect.Method.invokeNative(Native Method)
    11-12 17:03:12.724: ERROR/AndroidRuntime(8387): at java.lang.reflect.Method.invoke(Method.java:521)
    11-12 17:03:12.724: ERROR/AndroidRuntime(8387): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:860)
    11-12 17:03:12.724: ERROR/AndroidRuntime(8387): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:618)
    11-12 17:03:12.724: ERROR/AndroidRuntime(8387): at dalvik.system.NativeStart.main(Native Method)
    11-12 17:03:12.724: ERROR/AndroidRuntime(8387): Caused by: java.lang.NullPointerException
    11-12 17:03:12.724: ERROR/AndroidRuntime(8387): at android.view.View.<init>(View.java:1823)
    11-12 17:03:12.724: ERROR/AndroidRuntime(8387): at android.widget.TextView.<init>(TextView.java:335)
    11-12 17:03:12.724: ERROR/AndroidRuntime(8387): at android.widget.TextView.<init>(TextView.java:329)
    11-12 17:03:12.724: ERROR/AndroidRuntime(8387): at android.widget.TextView.<init>(TextView.java:324)
    11-12 17:03:12.724: ERROR/AndroidRuntime(8387): at de.test.Main$Panel.<init>(Main.java:35)
    11-12 17:03:12.724: ERROR/AndroidRuntime(8387): at de.test.Main.onCreate(Main.java:27)
    11-12 17:03:12.724: ERROR/AndroidRuntime(8387): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
    11-12 17:03:12.724: ERROR/AndroidRuntime(8387): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2544)
    11-12 17:03:12.724: ERROR/AndroidRuntime(8387): ... 11 more
    11-12 17:03:12.754: INFO/Process(82): Sending signal. PID: 8387 SIG: 3

    Kann mir irgendjemand helfen?
     
  2. FelixL, 13.11.2010 #2
    FelixL

    FelixL Ehrenmitglied

    Beiträge:
    4,855
    Erhaltene Danke:
    754
    Registriert seit:
    26.11.2009
    Phone:
    Wileyfox Swift, HTC One M8
    Acitivity im Manifest angegeben?
     
  3. HeroUser96, 13.11.2010 #3
    HeroUser96

    HeroUser96 Threadstarter Android-Hilfe.de Mitglied

    Beiträge:
    53
    Erhaltene Danke:
    2
    Registriert seit:
    15.09.2010
    Ja hab ich.
    Wenn ich die Stellen, wo ich versuche die TextView hinzuzufügen entferne, läufts auch.

    Noch irgendwelche anderen Ideen?
     
  4. Fr4gg0r, 13.11.2010 #4
    Fr4gg0r

    Fr4gg0r App-Anbieter (Werbung)

    Beiträge:
    2,506
    Erhaltene Danke:
    447
    Registriert seit:
    21.12.2009
    private TextView Punkte = new TextView(null);

    -.-
    Da muss ein Context übergeben werden..: this
    Du könntest zb DeineKlasse.this nehmen.
    Oder im Konstrukter erst erzeugen und dann den context paramter nehmen.
     
  5. HeroUser96, 13.11.2010 #5
    HeroUser96

    HeroUser96 Threadstarter Android-Hilfe.de Mitglied

    Beiträge:
    53
    Erhaltene Danke:
    2
    Registriert seit:
    15.09.2010
    Wahrscheinlich mache ich wieder irgendeinen Fehler, aber es stürtzt bei mir immer noch mit der selben Fehlermeldung ab.

    Ich hab jetzt folgenden Code:

    public class Main extends Activity {
    private Panel panel;
    @Override
    public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    requestWindowFeature(Window.FEATURE_NO_TITLE);
    setContentView(new Panel(this, panel));

    }

    class Panel extends SurfaceView implements SurfaceHolder.Callback {

    private ArrayList<View> _views = new ArrayList<View>();
    private TextView Punkte ;

    public Panel(Context context, Panel panel) {
    super(context);

    setFocusable(true);

    Punkte = new TextView(context);
    _views.add(Punkte);
    panel.addTouchables(_views);
    }


    Kann mir bitte nochmal jemand helfen??
     
  6. Fr4gg0r, 13.11.2010 #6
    Fr4gg0r

    Fr4gg0r App-Anbieter (Werbung)

    Beiträge:
    2,506
    Erhaltene Danke:
    447
    Registriert seit:
    21.12.2009
    setContentView(new Panel(this, panel));

    Erstens verstehe ich nicht warum du da ein Panel als Parameter übergibst, und 2. ist dieser zu dem Zeitpunkt null, wodurch panel.addTouchables(_views); natürlich nicht möglich ist.
     
  7. HeroUser96, 13.11.2010 #7
    HeroUser96

    HeroUser96 Threadstarter Android-Hilfe.de Mitglied

    Beiträge:
    53
    Erhaltene Danke:
    2
    Registriert seit:
    15.09.2010
    Danke für die schnelle Hilfe!

    Jetzt stürzt es nicht mehr ab :D

    Allerdings wird bei mir auch nichts angezeigt :(

    Ich hab schon Größe geändert, text geändert...

    Ich weiß ich stell mich ziemlich doof an :o

    Muss ich noch irgendetwas beachten?
     
  8. HeroUser96, 14.11.2010 #8
    HeroUser96

    HeroUser96 Threadstarter Android-Hilfe.de Mitglied

    Beiträge:
    53
    Erhaltene Danke:
    2
    Registriert seit:
    15.09.2010
    Wenn ich den Code so ändere, funktionierts:

    public class Main extends Activity {
    @Override
    public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    requestWindowFeature(Window.FEATURE_NO_TITLE);
    setContentView(new Panel(this));

    }

    class Panel extends LinearLayout implements SurfaceHolder.Callback {
    private Button Punkte ;


    public Panel(Context context) {
    super(context);


    Punkte = new Button(context);
    this.addView(Punkte);

    neuesObjekt();
    }

    allerdings kann ich es so nicht machen, da bei einem LinearLayout andere (wichtigere) Funktionen fehlen.

    Aber da sieht man das der Fehler im addTouchables() ist.

    Weiß irgendjemand was Falsch sein könnte?
     

Diese Seite empfehlen

Besucher kamen mit folgenden Begriffen auf unsere Seite:

  1. unable to start activity componentinfo