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

startActivity, neue Activity zeigt trotz setContentView kein Layout. (Gelöst)

Dieses Thema im Forum "Android App Entwicklung" wurde erstellt von ChibaCityBlues, 18.01.2011.

  1. ChibaCityBlues, 18.01.2011 #1
    ChibaCityBlues

    ChibaCityBlues Threadstarter Neuer Benutzer

    Beiträge:
    2
    Erhaltene Danke:
    1
    Registriert seit:
    06.11.2010
    Hi!

    Ich bastele seit zwei Tagen ein wenig mit der Android Entwicklung, und bin nun an einem Punkt, wo ich, Google und die Forumsuche nicht mehr weiter wissen.

    Ich versuche eine neue Activity zu starten, aber sie zeigt einfach nicht das Layout, das für sie vorgesehen war.

    Die Eltern Activity bekommt durch das entsprechende Layout den Eventhandler zugewiesen:
    Code:
        <Button
            android:id="@+id/Knopf"
            android:layout_width="fill_parent"
            android:layout_height="70px"
            android:text="Knopf" 
            android:onClick="onClickKnopf">
        </Button>
    Der Eventhandler der Elternactivity selbst sieht so aus:
    Code:
        public void onClickKnopf(View view) {
            
            Intent myIntent = new Intent(view.getContext(), NeueActivity.class);
            Bundle myBundle = new Bundle();
            myBundle.putString("Test", null);
            myIntent.putExtras(myBundle);
     
            this.startActivity(myIntent);
         }
    
    Soweit funktioniert auch alles, wie es soll...

    Aber sobald die neue Activity gestartet wird, sollte sie eigentlich das Layout laden. Aber genau das will sie einfach nicht. Die setContentView Methode wird zwar ausgeführt, sie zeigt aber keine Wirkung. Das Layout selbst funktioniert aber, wenn es in der Elternactivity geladen werden soll...
    Code:
    public class NeueActivity extends ListActivity {
        private String Test = new String();
    
        public void onCreate() {
            Bundle myBundle = getIntent().getExtras();
            super.onCreate(myBundle);
            this.Test = myBundle.getString("Test");
            setContentView(R.layout.auswahl);
        }
        
    }
    Der Vollständigkeit halber noch das Layout:
    Code:
    <?xml version="1.0" encoding="utf-8"?>
     <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
             android:orientation="vertical"
             android:layout_width="match_parent"
             android:layout_height="match_parent"
             android:paddingLeft="8dp"
             android:paddingRight="8dp">
    
         <ListView android:id="@id/android:list"
                   android:layout_width="match_parent"
                   android:layout_height="match_parent"
                   android:layout_weight="1"
                   android:drawSelectorOnTop="false"></ListView>
    
         <TextView android:id="@id/android:empty"
                   android:layout_width="match_parent"
                   android:layout_height="match_parent"
                   android:text="No data"></TextView>
     </LinearLayout>
    
    Und der Ausschnitt aus dem Manifest:
    Code:
    <activity android:name=".NeueActivity" android:label="Auswahl">
    </activity>
    
    Ich muss da irgendetwas übersehen... Vermutlich ein dummer Anfängerfehler. Jemand eine Idee?
     
    Zuletzt bearbeitet: 18.01.2011
    jannux bedankt sich.
  2. ChibaCityBlues, 18.01.2011 #2
    ChibaCityBlues

    ChibaCityBlues Threadstarter Neuer Benutzer

    Beiträge:
    2
    Erhaltene Danke:
    1
    Registriert seit:
    06.11.2010
    Hat sich erledigt. Die onCreate Methode war Schuld:

    Code:
    public class NeueActivity extends ListActivity {
    private String Test = new String();  
    
    [B]@Override
    protected void onCreate(Bundle savedInstanceState) {
             super.onCreate(savedInstanceState);
    [/B]         Bundle myBundle = getIntent().getExtras();         
             this.Test = myBundle.getString("Test");         
             setContentView(R.layout.auswahl);  }      
    }
    Ich sollte weniger Tutorials lesen, und mehr Dokumentation...
     
    Zuletzt bearbeitet: 18.01.2011

Diese Seite empfehlen