2016-03-27 3 views
0

Ich habe zwei Variablen (nom und marc), die von einer Datenbank (sqlite) kommen. Ich muss diese Variablen mit einer HashMap anzeigen. Ich habe Folgendes versucht, aber es funktioniert nicht:Wie kann ich HashMap mit Variablen verwenden? Java sqlite

private void populateList(String nom, String marc) { 
    list = new ArrayList<HashMap<String, String>>(); 
    HashMap<String, String> temp = new HashMap<String, String>(); 
    temp.put(FIRST_COLUMN, nom); 
    temp.put(SECOND_COLUMN, marc); 
    temp.put(THIRD_COLUMN, "1"); 
    list.add(temp); 
} 

Was mache ich falsch?

in einem Klick-Ereignis einer Schaltfläche ich einen Cursor verwenden, um Daten aus der Datenbank zu holen:

Cursor c = db.rawQuery("Select * from prod where id_prod = " + id, null); 
if (c.moveToFirst()){ 
    do { 
     String nom = c.getString(1); 
     String marc = c.getString(2); 

     populateList(nom, marc); 
    } while(c.moveToNext()); 
} 

Wie Sie PopulateList ist eine Methode unterscheidet sich von der Taste, die ich die Variablen senden müssen sehen können. Vielleicht, dass ich falsch liege. Jede Antwort wird helfen. Danke

+1

zu entfernen "Ich versuche, diese aber es funktioniert nicht." "Was mache ich falsch?" Was versuchst du zu tun und was tut es stattdessen? –

+2

Ich rate mal, dass du 'list' nicht wirklich durch eine leere Liste ersetzen willst, wenn du' populateList' nennst - sonst kannst du die 'HashMap' Referenz direkt speichern. –

+0

Ich muss eine Liste ausfüllen, jedes Element muss nach dem Klick Ereignis der Schaltfläche angezeigt werden. Also muss ich die Variablen "nom" und "marc" anzeigen. Ich denke, ich sende falsche Variablen, weil nichts in der Liste angezeigt wird. Aber kein Fehler. Es ist, als wären die Variablen null. Ich erkläre es? –

Antwort

0

Jedes Mal, wenn eine populateList() -Methode aufgerufen wird, erstellen Sie eine neue Instanz der Liste, die Sie rendern möchten! Versuchen

list = new ArrayList<HashMap<String, String>>(); 

vom populateList (...)

+0

Danke daN ... Ich habe gelöst ... es war so albern die Lösung! Ich löste die Methode populateList und I Referenzen direkt! Danke vielmals! –