• Home
  • Das erste mal hier?
  • Kontakt
  • Downloads
  • App Reviews
  • Buch Reviews
  • Kategorien
    • App-Economy
    • App-Entwicklung
      • Android
      • Java
      • Planung
      • Testen
    • App-Marketing
      • Bloggen
      • Seo
      • Social Media
    • Fachbuch
    • Programmier Tutorials
  • App-Entwickler gesucht?

Tippscom.de

Erschaffe deine eigenen Apps

  • Android App programmieren
  • Java lernen
  • Komplette Apps
  • Tipps
  • Meine Apps
Aktuelle Seite: Startseite / App-Entwicklung / Android / Android programmieren Tutorial 7 – Wie du einfache Listen erstellst

Android programmieren Tutorial 7 – Wie du einfache Listen erstellst

2. Oktober 2014 von Marius 12 Kommentare

Android Tutorial - Listen

Listen sind toll. Sie helfen dir viele Informationen auf strukturierte Weise darzustellen. Auf mobilen Android-Geräten hat die Liste einen besonderen Stellenwert, denn sie ist perfekt für kleine Bildschirme.

Auf Smartphones hast du kaum Platz mit Tabellen zu arbeiten, da meist einfach kein Platz für mehrere Spalten ist.

Durch Listen kann der User deiner App bequem scrollen. Über diese Benutzerfreundlichkeit freut sich der User.

Wählt der User einen Listeneintrag aus, indem er ihn berührt, öffnet sich eine weitere Activity, die ihm mehr Informationen zeigt. Toll oder?

Listen machen deine User also glücklich, das haben wir jetzt festgestellt.
so
Erstellen wir jetzt mal eine Liste in Android, damit du auch weißt wie das geht.

Listen in Android erstellen, mithilfe einer ListView und eines ArrayAdapters

Android hat APIs und Klassen für (fast) alles, was das Entwicklerherz begehrt.
So gibt es auch eine View-Klasse, die nichts anderes macht, als Listen darzustellen, danke dafür Android! Diese Klasse, von der ich spreche, heißt ListView.

Um eine Liste mithilfe einer ListView zu erstellen brauchen wir folgendes:

  1. Daten – Wir benötigen Daten, mit denen wir unsere Liste füttern. Am besten geeignet für einfache Listen, deren Einträge nur aus einer Textzeile bestehen, ist ein String-Array
  2. Adapter – Der Adapter baut aus den Daten, die Listeneinträge zusammen. Es gibt vorgefertigte Adapter, zum Beispiel der ArrayAdapter. Für komplexere Listen, kann man auch seine eigenen Adapter entwickeln. Wie das geht lernst du in einer späteren Lektion
  3. ListView – Die Klasse zum Darstellen unserer Liste

Sehr gut, du weißt jetzt, was du brauchst, um eine simple Liste in Android zu erstellen. Wie du die einzelnen Komponenten einsetzt, lernst du jetzt.

1. Android Projekt erstellen

Wie immer erstellst du zuerst ein neues Android Projekt in deiner Entwicklungsumgebung.

2. ListView zum Layout hinzufügen

Die Layout-Datei unseres jungfräulichen Projekts bekommt nun als erstes eine ListView spendiert. Dazu bearbeitest du die Layout-Datei main.xml, sodass sie am Ende so aussieht.

1
2
3
4
5
6
7
8
9
10
11
12
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
              android:orientation="vertical"
              android:layout_width="fill_parent"
              android:layout_height="fill_parent"
>
    <ListView
        android:id="@+id/list_view"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
    />
</LinearLayout>

Wir erstellen eine ListView mit der ID list_view, welches wir in ein LinearLayout legen.

3. ListView in MainActivity erstellen

Als nächstes initialisieren wir unsere ListView in der MainActivity. Wie du Gui-Elemente initialisieren kannst, hast du ja bereits gelernt.

Zunächst benötigen wir eine Klassenvariable und Überraschung es wird die ListView sein.

Also verpasst du deiner MainActivity jetzt folgende Zeile.

1
ListView lView;

Anschließend initialisierst du lView in der onCreate anhand der ID, die wir unserer View eben verliehen haben.

1
lView = (ListView) findViewById(R.id.list_view);

Die Liste haben wir jetzt schonmal initialisiert, doch leider ist sie noch komplett leer, das ändern wir aber jetzt.

4. Ein String-Array erstellen

Um ein String-Array zu erstellen, könntest du ein Hard-Coded Array erstellen, sprich direkt in der MainActivity. Das ist aber unschön, denn Daten, wie Strings kommen in Android in den Ordner ressources.

So kannst du deine Strings leichter wiederverwenden und später auch übersetzen.

Also navigiere jetzt zum Ordner res/values und erstelle eine neue XML-Datei, mit dem Namen arrays.xml.

In dieser Datei definierst du jetzt das Array, mit dem wir unsere Liste füttern möchten.

1
2
3
4
5
6
7
8
9
<?xml version="1.0" encoding="utf-8"?>
<resources>
    <string-array name="list_array">
        <item>Tippscom ist cool!</item>
        <item>Apps programmieren macht Spaß</item>
        <item>I love Android</item>
        <item>Ich bin ein toller Listeneintrag</item>
    </string-array>
</resources>

5. Adapter erstellen und Liste mit Daten füttern

Jetzt möchten unsere Liste endlich mal mit Daten befüllen. Dafür brauchen wir einen ArrayAdapter, der unser Array in Listeneinträge umwandelt.

Wechsle wieder zu deiner MainActivity und gönne der onCreate ein paar weitere Zeilen Code.

1
2
ArrayAdapter adapter = new ArrayAdapter(this, android.R.layout.simple_list_item_1, R.array.list_array);
lView.setAdapter(adapter);

Unser ArrayAdapter hat in diesem Fall 3 Parameter.

Das ist zum einen der Context, also die MainActivity, oder einfach nur this.

Der 2. Parameter ist die Layout-Datei des Listeneintrags, der definiert, wie ein Listeneintrag dargestellt wird. Hierfür verwenden wir einfach die vorgefertigte Resource android.R.layout.simple_list_item1.

Der letzte Parameter ist unser Array, mit dessen Items der Adapter die Listeneinträge bestücken soll.

Das war es auch schon wieder mit dieser Lektion, in der du gelernt hast einfache Listen in Android zu erstellen.

In der nächsten Lektion geht es darum, wie du definierst, was bei einem Klick auf einen Listeneintrag passieren soll.

Hat dir die Lektion gefallen? Ja? Dann freue ich mich über dein Feedback hier in den Kommentaren!
Verpasse keine Lektion und verbinde dich mit Tippscom auf Google+ und Facebook.

Zur nächsten Lektion
Zurück zur Lektionsübersicht

Kategorie: Android, App-Entwicklung, Programmier Tutorials

Das wird dich auch interessieren

  1. Android App Tutorial – Cocktaillexikon + Quellcode zum Download
  2. Wie du eine To-Do-Listen-App in Android programmierst #1
  3. Android App Tutorial – So erstellst du eine Taschenrechner-App in Android
  4. Wie du eine To-Do-Listen App in Android programmierst #2 – Speichern und Laden der Aufgabenliste
  5. Android Anfänger Tutorial 3 – Die Android-Manifest Datei

Über Marius

Hi, danke dass du dir meinen Artikel durchgelesen hast!

Ich heiße Marius, bin leidenschaftlicher Programmierer.

Hier auf meinem Blog möchte ich dir zeigen, wie du deine eigenen tollen Apps programmieren kannst.

Kommentare

  1. Marius meint

    21. September 2015 um 23:56

    Hi Aydin,

    Danke für das Feedback. Schau dir mal das Kommentar von Mathias an, vielleicht hilft dir diese Lösung ja weiter. 😉

    Viele Grüße

  2. Marius meint

    21. September 2015 um 23:54

    Hi Mathias,

    Freut mich, dass es Dir gefällt. Danke, dass du deine Lösung hier geteilt hast, das hilft bestimmt noch dem ein oder anderen.

    Viele Grüße

  3. Aydin meint

    19. September 2015 um 18:13

    Hallo Marius,

    erstmal danke für das Tutorial, ich habe so einiges dazu gelernt.
    Allerdings muss ich bemängeln dass der Code irgendwo einen Fehler haben muss.

    Ich habe alles so geschrieben wie in deinem Tutorial lediglich mit eigenen variablen Namen. Doch es hat mit dem speichern einfach nicht funktioniert.

    Nach ein paar verzweifelten Stunden habe ich beschlossen deinen Code downzuloaden um zu schauen ob der funktioniert. Leider vergebens, weder auf dem Emulator noch meinem Smartphone speichert die App die Tasks ab. Es wird zwar eine XML Datei erstellt aber beim schließen und öffnen der App werden alle Tasks gelöscht oder nicht geladen.
    Ich hab absolut keine Ahnung woran das liegen könnte da ich deinen Code ja 1 zu 1 rüber kopiert habe.

    Freundliche Grüße

    Aydin

  4. Mathias meint

    19. September 2015 um 03:24

    Hallo Marius,

    hab das gleiche Problem wie die anderen. Die Liste die eigentlich durch ListView angezeigt werden sollte ist leer. Das Problem habe ich folgendermaßen gelöst:

    String[] functions = getResources().getStringArray(R.array.list_array);
    ListAdapter adapter = new ArrayAdapter(this, android.R.layout.simple_list_item_1, functions);

    Ansonsten ein super Tutorial! Werde ich noch bis zum Ende durchführen 🙂
    LG

  5. Marius meint

    18. September 2015 um 10:32

    Hi Florian,

    Leider kann ich dir mit den Infos die du mir in deinem Kommentar geschildert hast wenig anfangen. Es könnte ein Problem von Android Studio sein, oder du hast vergessen in deinen resources das Array list_array zu definieren, da Android Studio diese resource anscheinend nicht findet.

    Hoffentlich konnte ich Dir damit weiterhelfen! 😀

    Viele Grüße
    Marius

  6. Florian meint

    14. September 2015 um 10:44

    Hallo Marius,

    ich habe das gleiche Problem wie meine Vorredner.
    Die App lässt sich problemlos starten, aber die Liste ist leer.
    In Android Studio wird in der MainActivity bei

    ArrayAdapter adapter = new ArrayAdapter(this, android.R.layout.simple_list_item_1, R.array.list_array);

    der Eintrag “R.array.list_array” mit dem Hinweis belegt: “Expected resource of type id”

    Weißt du, woran das liegt und wie man den Fehler beheben kann?

    LG, Florian

  7. Marius meint

    7. August 2015 um 16:51

    Hi Killian,

    Danke dass dir mein Blog gefällt! 😀

    Leider kann ich dir so auf die schnelle nicht genau sagen woran das liegt. Schau dir am besten mal mein ToDo-Listen Tutorial an.

    Da zeige ich auch eine Liste und den Quellcode kannst du dir downloaden.

    Hoffe das hilft Dir!

    Viele Grüße
    Marius

  8. Kilian meint

    2. August 2015 um 10:03

    Hallo Marius,

    zunächst einmal vielen Dank für die schönen, lässigen Tutorials. Meine ListenApp zeigt bei diesem Beispiel nur eine leere Seite an, als würde er die Einträge von dem Array nicht lesen können. Errors werden nicht ausgegeben. Weißt du wo der Fehler liegt.

    Vielen Dank und liebe Grüße

    Kilian

  9. Marius meint

    15. Juli 2015 um 05:57

    Hi Peter,

    Welche IDE nutzt du und welche Exception bekommst du, wenn du die App versuchst zu starten?

    Beste Grüße

  10. Peter meint

    11. Juli 2015 um 21:43

    Hi Marius,

    die arrays.xml wird bei mir auch nicht genommen.
    Wenn ich ein Stringarray hard in die Activity code und diese in den Adapter stecke funktioniert es.

    Hatte zuerst den verdacht dass es an der namensgebung der xml liegt, ohne erfolg.
    Vllt kannst du das ganze nochmal überprüfen und herausfinden woran die auslagerung scheitert.

    Gruss

  11. Marius meint

    6. Juni 2015 um 10:41

    Hey Marcel,

    Schau mal bei Punkt “4. Ein String-Array erstellen”. Hast du denn die Datei arrays.xml in res/values erstellt und mit Werten gefüllt?

    Viele Grüße
    Marius

  12. Marcel meint

    5. Juni 2015 um 16:17

    Hey Marius,

    mir wird R.array.list_array als error angezeigt und wenn ich drüber hovere
    gibt’s die Meldung “Expected resource of type id”.
    Weißt du woran das liegt?

    Mfg

Schreibe einen Kommentar Antworten abbrechen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

Verbinde dich mit Tippscom

Like
Folgen
Folgen
Abonnieren

Beliebte Artikel

  • Wie du mit Java Spiele programmieren kannst
  • Java Anfänger Tutorial 6 – Methoden erklärt, anhand von Gettern und Settern
  • Android App Tutorial – So erstellst du eine Taschenrechner-App in Android
  • Java Programmieren lernen – Tutorial
  • Android Anfänger Tutorial 5 – Wie du deine Apps mit Buttons bestückst
  • Android Anfänger Tutorial 6 – Wie du Activities mit Intents starten und beenden kannst
  • Android programmieren Tutorial 7 – Wie du einfache Listen erstellst

Aktuelle Artikel

  • Brettspiel-Apps – Tolle Unterhaltung auf dem Smartphone
  • Paintastic – Erstelle Kunstwerke mit deinem Smartphone!
  • Puzzle Bubble Shooter Classic – Noch mehr Bubble-Spaß
  • 6 effektive Maßnahmen die dein App-Business zum Erfolg führen
  • Deutschland – Apps und News – Apps für deine Stadt
  • Animal Stickers – Versehe deine Nachrichten mit niedlichen Tier-Stickern für iOS
  • Panda Bubble Pop: Birds Free – Match-3-Bubble-Shooter

Blogroll

  • Android Developers
  • Basteldroid
  • Helfsoft – Game Developer

Letze Kommentare

  • A.Berger zu Java Anfänger Tutorial 11 – VererbungSehr gut, vielen Dank!
  • Takko-Fan zu 6 effektive Maßnahmen die dein App-Business zum Erfolg führenIch finde vor allem Deinen letzten Tipp "Auf User-Wünsche eingehen"
  • Marius zu Java Anfänger Tutorial 10 – ArraysHi Manu, absolut nicht kleinlich. Wenn du auf Fehler hinweist
  • Marius zu Android Anfänger Tutorial 5 – Wie du deine Apps mit Buttons bestückstHallo Lothar, das ist kein Problem. Du kannst das Package
  • sk zu Java Anfänger Tutorial 2 – Kompilieren in der Kommandozeile, wie in den 80ernHallo Marius, schon länger habe ich den Gedanken, wie ich

Wichtige Seiten

  • Impressum
  • Datenschutz
  • Haftungsausschluss
  • Kontakt
  • Werben

Kategorien

  • Android
  • Java
  • App-Marketing

Tutorials

  • Android lernen
  • Java lernen
  • Beispiel-Apps
  • Profi Tipps

Verlinkungen

Blogverzeichnis - Blog Verzeichnis bloggerei.de Bloggeramt.de TopBlogs.de das Original - Blogverzeichnis | Blog Top Liste

Copyright © 2019 · Tippscom.de