1. Hast Du Lust, bei uns mitzuarbeiten und das AH-Team zu verstärken? Alle Details zu dieser aktuellen Herausforderung findest Du hier.
  1. MegaChroniX, 12.04.2012 #1
    MegaChroniX

    MegaChroniX Threadstarter Junior Mitglied

    Hallo

    Ich habe ein Problem mit einem Dynamischen Layout in Android.

    Ich möchte in folgendem Layout erreichen, dass er mir eine Übersicht über Räume in einer Etage mit den darin liegenden Elementen (Fenster, Türen) gibt.

    room.xml
    HTML:
    <?xml version="1.0" encoding="utf-8"?>
    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:orientation="vertical" >
        <TextView
            android:id="@+id/textViewRoomHeader"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text=""
            android:textAppearance="?android:attr/textAppearanceLarge" />
        <ScrollView
            android:id="@+id/scrollView1"
            android:layout_width="match_parent"
            android:layout_height="match_parent" >
            <LinearLayout
                android:id="@+id/linearLayoutRoom"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:orientation="vertical" >
            </LinearLayout>
        </ScrollView>
    </LinearLayout>
    Im LinearLayoutRoom sollen nun die Räume wie folge aufgezeige werden
    Raumname(TextView)
    Elemente (in ListView)


    Code:
          TevtView titel = (TextView) findViewById(R.id.textViewRouteHeader);
          LinearLayout layout = (LinearLayout) findViewById(R.id.linearLayoutRoom);
    
          titel.setText(getString(R.string.current_room, floor.getName()));
    
          TextView tv = null;
          ListView lv = null;
          for (Room r : floor.getRooms())
          {
             tv = new TextView(this);
    
             tv.setText(r.getName());
             layout.addView(tv);
             tv.setTextAppearance(this, android.R.style.TextAppearance_Large);
    
             lv = new ListView(this);
             lv.setAdapter(new RoomListAdapter(r.getElements(), this));
             lv.setOnItemClickListener(new OnItemClickListener()
             {
                @Override
                public void onItemClick(AdapterView<?> arg0, View arg1, int arg2, long arg3)
                {
                   Toast.makeText(FloorActivity.this, "ID: " + arg3, Toast.LENGTH_SHORT).show();
                }
                
             });
    
             layout.addView(lv);
          }
    
    Der ListAdapter funktioniert richtig und gibt auch die Liste richtig zurück.
    Es wird aber immer nur das erste Element in der Liste angezeigt.

    Wie auf dem Screenshot zu sehen, ist am rechten Ende einer jeden Liste eine scrollbar, also wird ja die ganze liste dahinter liegen...

    [​IMG]

    wie erreiche ich es, dass jede Liste in voller länge angezeigt wird?

    PS: bitte nicht schimpfen über Layout etc. bin android neuling :blushing:
     
  2. swordi, 12.04.2012 #2
    swordi

    swordi Gewerbliches Mitglied

    listview und scrollview vertragen sich nicht
     
  3. MegaChroniX, 12.04.2012 #3
    MegaChroniX

    MegaChroniX Threadstarter Junior Mitglied

    ok, aber wie erreiche ich dann die listen "unterhalb" des sichtbaren display bereichs?
    die listen an sich müssen ja nicht scrollable sein, werden ja vollständig dargestellt, sondern nur das gesamte layout
     
  4. swordi, 12.04.2012 #4
    swordi

    swordi Gewerbliches Mitglied

    verzichte einfach auf listen und füge alle zeilen "händisch" ein.
     
  5. swordi, 12.04.2012 #5
    swordi

    swordi Gewerbliches Mitglied

    oder du machst eine

    expandablelistview

    gruppen sind die räume
    kinder sind die jetzigen listen.

    dann hast auch das erreicht was du möchtest
     
Die Seite wird geladen...
Ähnliche Themen Forum Datum
Registrierung erst nach Klick auf Bestätigungsemail Android App Entwicklung 09.11.2017
[OFFEN] Fehlende Elemente im RecyclerView innerhalb eines Fragments Android App Entwicklung 01.09.2017
[GESCHLOSSEN] Random ListItem ausgeben funktioniert nicht mehr Android App Entwicklung 13.08.2017
[OFFEN] Bild per Intent an ListView übergeben und anzeigen Android App Entwicklung 13.08.2017
[ERLEDIGT] Android Studio Erste App-Programmierung Android App Entwicklung 02.08.2017
[ERLEDIGT] Listview mit Datenbank über Custom ArrayList verbinden Android App Entwicklung 22.04.2017
[ERLEDIGT] Drawer mit scrollbarem Listview Android App Entwicklung 27.03.2017
[ERLEDIGT] Der Weg zur ersten eigenen App Android App Entwicklung 26.03.2017
ListView fix am unteren Bildschirmrand ausgeben Android App Entwicklung 01.03.2017
ArrayList Elemente beinhalten nur Daten des letzten Elements? Android App Entwicklung 25.02.2017

Benutzer fanden diese Seite durch die Suche nach:

  1. c# listview erstes element nicht sichtbar

Du betrachtest das Thema "In ListView wird nur erstes Element angezeigt?" im Forum "Android App Entwicklung",