1. micha91, 21.02.2011 #1
    micha91

    micha91 Threadstarter Neuer Benutzer

    Hallo,

    bin neu hier im Forum und der Android entwicklung.
    Ich versuche durch Klick auf einen Button, eine neue Activity zu starten. Wenn ich allerdings den Button klicke, stürzt die App ab.
    Woran kann das liegen?

    Hier meine Quelltexte:

    TestActivity.java

    Code:
    package com.TestActivity;
    
    import android.app.Activity;
    import android.content.Intent;
    import android.os.Bundle;
    import android.view.View;
    import android.view.View.OnClickListener;
    import android.widget.Button;
    
    public class TestActivity extends Activity 
    {
    	/** Called when the activity is first created. */
        Button karteAnzeigen;
        @Override
        public void onCreate(Bundle savedInstanceState) 
        {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.main);
           
            karteAnzeigen = (Button)findViewById(R.id.karteAnzeigen);
            OnClickListener karteAnzeigen = new OnClickListener()
            {
            	public void onClick(View v)
            	{
            		startActivity(new Intent(TestActivity.this, karteAnzeigen.class));
            	}
            };
        }
    }

    karteAnzeigen.java

    Code:
    package com.TestActivity;
    
    import android.os.Bundle;
    
    public class karteAnzeigen extends TestActivity
    {
    	
    
    	public void onCreate(Bundle savedInstanceState)
    	{
    		super.onCreate(savedInstanceState);
    		setContentView(R.layout.karte_anzeigen);
    	}
    }

    AndroidManifest.xml

    Code:
    <?xml version="1.0" encoding="utf-8"?>
    <manifest xmlns:android="http://schemas.android.com/apk/res/android"
          package="com.TestActivity"
          android:versionCode="1"
          android:versionName="1.0">
    
    
        <application android:icon="@drawable/icon" android:label="@string/app_name">
            <activity android:name=".TestActivity"
                      android:label="@string/app_name">
                <intent-filter>
                    <action android:name="android.intent.action.MAIN" />
                    <category android:name="android.intent.category.LAUNCHER" />
                </intent-filter>
            </activity>
    		<activity android:name=".kartenAnzeigen"></activity>
        </application>
    </manifest>
     
  2. mr.freeze, 21.02.2011 #2
    mr.freeze

    mr.freeze Android-Hilfe.de Mitglied

    welcher fehler wird denn angezeigt?
    logcat?
     
  3. FelixL, 21.02.2011 #3
    FelixL

    FelixL Ehrenmitglied

    <activity android:name=".kartenAnzeigen"></activity>

    Soll das karteAnzeigen heißen?

    Edit: Willkommen im Forum ;)
     
  4. micha91, 22.02.2011 #4
    micha91

    micha91 Threadstarter Neuer Benutzer

    hab den Eintrag im AndroidManifest geändert, allerdings keine Änderung.
    Beim Klick auf den Button, stürzt die Anwednung mit folgender Meldung ab:

    Code:
    java.lang.IllegalStateException: Could not find a method onClickKarteAnzeigen(View) in the activity class com.TestActivity.TestActivity for onClick handler on view class android.widget.Button with id 'karteAnzeigen'
    

    Danke für eure Hilfe :thumbsup:
     
  5. swordi, 22.02.2011 #5
    swordi

    swordi Gewerbliches Mitglied

    du hast im xml beim button ein

    android:onClick="onClickKarteAnzeigen"

    (Nur eine vermutung, da der code davon nicht da ist)


    dann brauchst dann eine

    public void onClickKarteAnzeigen(View v) Methode
     
  6. micha91, 22.02.2011 #6
    micha91

    micha91 Threadstarter Neuer Benutzer

    ja, stimmt.

    aber wie sieht das ganze dann aus?

    Hab jetzt folgenden Code:

    Code:
    package com.TestActivity;
    
    import android.app.Activity;
    import android.content.Intent;
    import android.os.Bundle;
    import android.view.View;
    import android.view.View.OnClickListener;
    import android.widget.Button;
    
    public class TestActivity extends Activity 
    {
    	/** Called when the activity is first created. */
        Button karteAnzeigen;
        @Override
        public void onCreate(Bundle savedInstanceState) 
        {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.main);
           
            karteAnzeigen = (Button)findViewById(R.id.karteAnzeigen);
            OnClickListener karteAnzeigen = new OnClickListener()
            {
            	public void onClickKarteAnzeigen(View v)
            	{
            		startActivity(new Intent(TestActivity.this, karteAnzeigen.class));
            	}
            };
        }
    }
    
    aber jetzt gefällt ihm der "new OnClickListener()" nicht!?
    Was mach ich denn dauernd falsch?

    Naja, wie gesagt, bin erst am Anfang der Entwicklung.
     
  7. swordi, 22.02.2011 #7
    swordi

    swordi Gewerbliches Mitglied

    wenn du im xml bereits onclick angibst, benötigst du im code keinen listener mehr

    android übernimmt dir hier das tippen.
     
  8. micha91, 22.02.2011 #8
    micha91

    micha91 Threadstarter Neuer Benutzer

    vielen Dank.
    es funktioniert jetzt. Hab allerdings "android:onclick"karteAnzeigen" aus meiner XML genommen.
     

Users found this page by searching for:

  1. andriod Activity starten