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

ListView-Problem

Dieses Thema im Forum "Android App Entwicklung" wurde erstellt von lowterm, 13.01.2011.

  1. lowterm, 13.01.2011 #1
    lowterm

    lowterm Threadstarter Neuer Benutzer

    Beiträge:
    14
    Erhaltene Danke:
    0
    Registriert seit:
    13.11.2010
    Hallo,

    ich habe da ein Problem, das sich nicht lösen lässet.
    Es gibt eine xml-Datei, die wie folgt aussieht:

    Code:
    <?xml version="1.0" encoding="utf-8"?>
    <ListView android:id="@+id/myList"
      xmlns:android="http://schemas.android.com/apk/res/android"
      android:choiceMode="multipleChoice"
      android:layout_width="wrap_content"
      android:layout_height="wrap_content">
    </ListView>
    
    Ich habe auch eine Klasse, in der ich am Anfang eine Seite mit ein paar Eintagungen anzeige. Danach wird in derselben Klasse einpaar berechnungen durchgeführt. Wenn man nun auf einen Button klickt, soll das Ergebnis in einer neuen ListView erscheinen. Genau da liegt mein Problem. Egal was ich mache, schaffe ich das nicht. Die Klasse sieht in etwa so aus:

    Code:
    
    public class MyClass extends ListActivity implements OnClickListener{
        
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.startseite);
    
            //hier wird der Inhalt an die erste xml-Datei geschickt
    
        public void onClick(View v) {
            switch (v.getId()) {
                case R.id.btnOK:
                   setContentView(R.layout.xml-Datei);
                   ListView lv1=(ListView)findViewById(R.id.myList);
                   lv1.setAdapter(new ArrayAdapter<String>   (this,android.R.layout.simple_list_item_1 , berechnung));
    
                 break;
           }
       }
    }
    
    berechnung ist eine ArrayList. Nach dem Button-Klick kommt diese Fehlermeldung:

    java.lang.RuntimeException: Your content must have a ListView whose id attribute is 'android.R.id.list'

    Wie man sieht, ich habe da zwei setContentViews. Ich wusste nicht, wie ich sonst vorgehen soll. Ohne zweite setContentViews bekomme ich diese Fehlermeldung: java.lang.NullPointerException

    Kann jemand was damit anfangen?

    Danke im Voraus
     
    Zuletzt bearbeitet: 13.01.2011
  2. rushzero, 14.01.2011 #2
    rushzero

    rushzero Erfahrener Benutzer

    Beiträge:
    171
    Erhaltene Danke:
    36
    Registriert seit:
    20.10.2010
    Versuch mal die XML
    Code:
    <?xml version="1.0" encoding="utf-8"?>
    <ListView android:id="@android:id/list"
      xmlns:android="http://schemas.android.com/apk/res/android"
      android:choiceMode="multipleChoice"
      android:layout_width="wrap_content"
      android:layout_height="wrap_content">
    </ListView>
    
    Java
    Code:
    public class MyClass extends ListActivity implements OnClickListener{
        
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.startseite);
    
            //hier wird der Inhalt an die erste xml-Datei geschickt
    
        public void onClick(View v) {
            switch (v.getId()) {
                case R.id.btnOK:
                   setContentView(R.layout.xml-Datei);
                   this.setAdapter(new ArrayAdapter<String>   (this,android.R.layout.simple_list_item_1 , berechnung));
    
                 break;
           }
       }
    }
    
     
  3. lowterm, 14.01.2011 #3
    lowterm

    lowterm Threadstarter Neuer Benutzer

    Beiträge:
    14
    Erhaltene Danke:
    0
    Registriert seit:
    13.11.2010
    Hi,

    vielen herzlichen Dank. Es hat geklappt. :smile:

    Gruß
     

Diese Seite empfehlen