[FRÅGA] Hur fungerar det med en ListView innuti en Activity?

Diskussion i 'Frågor, support och diskussion' startad av beejizzle, 16 mar 2011.

  1. beejizzle

    beejizzle Teen Droid Medlem

    Blev medlem:
    10 feb 2010
    Inlägg:
    327
    Mottagna gillanden:
    33

    MINA ENHETER

    Jag vet inte varför men jag har lyckats snöa in mig för djupt och hittar inte ens svaret på enkla frågor längre och sitter därför nu fast.

    Jag har en main-class som innehåller tabs, som i sin tur visar tre andra klasser (allt enligt android exempel som finns på devsidan), har lite textboxar och textviews men nu ville jag lägga till en ListView och fylla den med lite material från en SQLite-db. I alla exempel så ändrar de classen till ListActivity istället för Activity men om ja gör det så blir de massa felkoder i classen. Måste man ha det eller kan man köra utan? Vad gör du?
     
  2. foobar17

    foobar17 Kid Droid Medlem

    Blev medlem:
    12 jun 2009
    Inlägg:
    56
    Mottagna gillanden:
    11

    MINA ENHETER

    Du kan en (eller flera) ListViews i layout:en för en Activity, tillsammans med andra widgets. Kikar du i källkoden för ListActivity så ser du att i dess layout som finns en enda ListView som spänner upp hela ytan.
     
    beejizzle gillar detta.
  3. KaptenKaffe

    KaptenKaffe Baby Droid Medlem

    Blev medlem:
    8 dec 2010
    Inlägg:
    22
    Mottagna gillanden:
    1

    MINA ENHETER

    Som sagt ovan. ListActivity är en Activity där hela vyn är en enda ListView + lite annat.

    Utseende på ListActivity-klassen är
    Kod:
    public class ListActivity extends Activity { ...}
    Källkod + mer info
    http://www.google.com/codesearch/p?hl=en#uX1GffpyOZk/core/java/android/app/ListActivity.java


    Intressant text från källkoden

    Tillägg:

    För svara på frågan direkt: Nej, man behöver inte ha en ListActivity för ha en ListView.

    En vanligt ListView i xml går lika bra
    HTML:
    <ListView android:id="@+id/listView1" 
    android:layout_height="wrap_content" android:layout_width="fill_parent">
    </ListView>
     
    Last edited: 17 mar 2011
    beejizzle gillar detta.
  4. Zooklubba

    Zooklubba Android Medlem

    Blev medlem:
    10 jul 2010
    Inlägg:
    6 445
    Mottagna gillanden:
    2 196

    MINA ENHETER

    Felkoderna brukar komma automatiskt om man hoppar mellan ex ListActivity och Activity, brukar fungera med refresh och auto import i eclipse (vissa metoder anropas givetvis annorlunda). Men till ett bättre svar på frågan:

    Jag hade gjort listviewn i xml:n och sedan haft ListView i koden och låtit koden fortfarande vara Activity. Då är det bara att köra listview.setAdapter(dinAdapter); istället för setAdapter(dinAdapter); som du gör om du extendar ListActivity.
     
    beejizzle gillar detta.
  5. beejizzle

    beejizzle Teen Droid Medlem

    Blev medlem:
    10 feb 2010
    Inlägg:
    327
    Mottagna gillanden:
    33

    MINA ENHETER

    Tack för alla svar, det tog mig framåt :)