ListView och variabla Intens.

Diskussion i 'Frågor, support och diskussion' startad av Svetla, 6 sept 2010.

  1. Svetla

    Svetla Baby Droid Medlem

    Blev medlem:
    21 aug 2010
    Inlägg:
    17
    Mottagna gillanden:
    0

    MINA ENHETER

    Jag är totalt nybörjare på både java och android.

    Kod: (ett vanligt listview demo)
    Bli medlem eller för att visa innehållet!

    Denna kod visar en ListView som har olika ListItems från en array.
    Och skriver ut den som blir klickad på i ett TextView.

    Säg att vi klickar på det översta LisItemet "hepp" då vill jag att hepp.class läggs till i Intent (this, com.exmpel.hepp.class)

    Självklart har jag redan skapa en ny hepp.java och hepp_layout.xml och lagt till den i androidmanifest osv... Enligt konstens regler.

    Vill ha en variabel som mål för mitt Intent helt enkelt.

    Är säkert jätte enkelt att fixa. Men jag har kört fast ordentligt och har tyvärr inte tålamodet att läsa en java bok och lära mig från grunden då jag vet att det dödar min motivation. Har testat det förut och lagt ned efter någon dag, utan jag vill gärna klippa googla och klistra mig fram i mitt lärande.

    Vet att det är lite "serverat på silverfat" jag ber om men om någon vill peka mig i rätt riktning skulle jag bli otroligt glad.

    EDIT:

    Kan jag kanske vara något på spåren här....

    StringBuilder myAction = new StringBuilder("com.exempel");
    myAction.append(items[position]);
    Intent i = new Intent(this, myAction.toString());
    startActivity(i)
     
    Last edited: 7 sept 2010
  2. Maxxan

    Maxxan Youth Droid Medlem

    Blev medlem:
    22 mar 2010
    Inlägg:
    162
    Mottagna gillanden:
    4

    MINA ENHETER

    Maybe look at Class.forName(StringNameOfClass)..
     
  3. ozp

    ozp Teen Droid Medlem

    Blev medlem:
    6 maj 2010
    Inlägg:
    250
    Mottagna gillanden:
    31

    MINA ENHETER

    Förstår inte riktigt vad du vill göra. Vill du ha en lista med klassnamn till olika aktiviteter som ska startas när du klicka i listan?
     
  4. Svetla

    Svetla Baby Droid Medlem

    Blev medlem:
    21 aug 2010
    Inlägg:
    17
    Mottagna gillanden:
    0

    MINA ENHETER

    ozp:

    Tanken är att jag ska ha en listview som en meny med säg 10 st kategorier.
    När jag väljer någon av kategorierna tex Godis skall den starta en ny activity där jag pressenterar underkategorierna i en ny listview. I detta fall hallonbåtar ferarribilar.

    Som jag förstår det använder jag Intent för välja vilken activity jag skall starta.
    och måste med listViewOnClickListener få fram vilket item (kanske ännu bättre item ID) som väljs av användaren och med hjälp av det ID eller namnet välja vilken ny activity (undermeny) som skall startas.

    ex
    Godis -> Hallonbåtar, ferarribilar
    Läsk -> Cola, fanta, sprite
    osv...
     
  5. woody

    woody Teen Droid Medlem

    Blev medlem:
    3 sept 2009
    Inlägg:
    319
    Mottagna gillanden:
    19

    MINA ENHETER

    ArrayAdapter kan ju innehålla vilka objekt som helst. Så om du skapar en klass Item som innehåller dels ett namn och dels ett intent så kan du skicka en lista av dessa objekt till ArrayAdapterns konstruktor och så får de enkelt ut objektet i onListItemClick

    något likande;

    public class Item
    {
    private final Intent mIntent;
    private final String mName;
    public Item(String name, Intent intent)
    {
    mIntent = intent;
    mName = name;
    }

    // Det är detta som namn som visas i listan
    public String toString()
    {
    return mName;
    }

    pubilc Intent getIntent()
    {
    return mIntent;
    }
    }
     
  6. Zooklubba

    Zooklubba Android Medlem

    Blev medlem:
    10 jul 2010
    Inlägg:
    6 448
    Mottagna gillanden:
    2 199

    MINA ENHETER

    En switch på positionen?