Jetzt kostenlos registrieren. Mitglieder surfen ohne Werbung auf Android-Hilfe.de!
Zurück   Android-Hilfe.de > Android Developer > Android App Entwicklung

Vector 2 ListView

Das Thema "Vector 2 ListView" befindet sich unter Android App Entwicklung auf Android-Hilfe.de.


Antwort

 

Themen-Optionen Ansicht
Alt 19.09.2011, 09:02   #1 (permalink)
Neuer Benutzer

Registriert seit: 19.09.2011
Beiträge: 2
Abgegebene Danke: 1
Erhielt 0 Danke für 0 Beiträge
Standard Vector 2 ListView

Hallo,

EIns vorweg ich beschäftige mich erst seit einigen Wochen mit Android. Bisher kam ich aus der Sparte C/C# daher habe ich hier bezüglich einiger Syntaxkonventionen ein etwas größeres Problem...

Ist-Situation:
Ich erhalte von einem ASP.NET Webservice ein DataSet, welches mir an ein SoapObject übergeben wird... in diesem DataSet können 1 - x Datensätze vorhanden sein...
Code:
SoapObject result = (SoapObject)envelope.getResponse();
            SoapObject resultTable;
            
            if(result.getPropertyCount() > 0)
            {
                resultTable = (SoapObject) result.getProperty(1);
                SoapObject Tabelrow = (SoapObject) resultTable.getProperty(0);
                TaxiListe = new Vector();
                for(int i = 0; i < Tabelrow.getPropertyCount(); i++)
                {
                    Bundle mTaxi = new Bundle();
                    SoapObject TaxiList = (SoapObject) Tabelrow.getProperty(i);
                    mTaxi.putString("FPID", TaxiList.getProperty("FPID").toString());
                    mTaxi.putString("TaxNr", TaxiList.getProperty("TaxNr").toString());
                    mTaxi.putString("FAID", TaxiList.getProperty("FAID").toString());
                    mTaxi.putString("FZKID", TaxiList.getProperty("FZKID").toString());
                    mTaxi.putString("KFZKennz", TaxiList.getProperty("KFZKennZ").toString());
                    mTaxi.putString("Sitze", TaxiList.getProperty("Sitze").toString());
                    mTaxi.putString("KmStart", TaxiList.getProperty("KmStart").toString());
                    mTaxi.putString("Baujahr", TaxiList.getProperty("Baujahr").toString());
                    
                    TaxiListe.add(mTaxi);
                }
            }
Mir liegt dann soweit ganz gut und schön ein Vector vor, der die Datensätze in Form von Bundles enthält.

Mein Frage nun hat evtl. jemand eine Idee wie ich nun diese(s)n Vector an ein ListView binden kann? In C/C# wüsste ich wie ich rangehen muss, nur unter Android tuh ich mich da noch etwas schwer.

Für Eure Hilfen bin ich sehr dankbar..

Jens
jmediaNet ist offline   Mit Zitat antworten
Alt 19.09.2011, 09:15   #2 (permalink)
Erfahrener Benutzer

Modell: G1 DevPhone / SGS2 / SGT10.1v

Registriert seit: 20.01.2009
Beiträge: 238
Abgegebene Danke: 7
Erhielt 50 Danke für 47 Beiträge
Standard AW: Vector 2 ListView

Alsoooo....

Als erstes würde ich an deiner Stelle ein Entity-Objekt verwenden, statt die einzelnen Ergebnisse in ein "Bundle" zu schmeißen: Also erstellst du dir eine neue Klasse "Taxi", fügst die ganzen Attribute hinzu (FPID, TaxNummer, etc...) und generierst dir dazu getter und setter (Eclipse: Rechtsklick in die Klasse -> Refactor > Generate Getter and Setter ...).
Entsprechend solltest du deinen Vector "parametrisieren": TaxiListe = new Vector<Taxi>(); - wobei eigentlich ein Vector unfug ist Nimmste sinnvoller eine ArrayList (List<Taxi> TaxiListe = new ArrayList<Taxi>().

Eine Anleitung zu einem ListView findest du z.B. hier. (Aus der Liste machst du per .toArray()-Methode ein Array).
__________________
Meine App: Die Cocktail App für Android™ - jetzt im Market (PRO)
sixi ist offline   Mit Zitat antworten
Folgender Benutzer bedankt sich bei sixi für diesen Beitrag:
jmediaNet (19.09.2011)
Alt 19.09.2011, 11:31   #3 (permalink)
Neuer Benutzer

Registriert seit: 19.09.2011
Beiträge: 2
Abgegebene Danke: 1
Erhielt 0 Danke für 0 Beiträge
Daumen hoch AW: Vector 2 ListView

Hallo sixi,

Danke erstmal für deine schnelle Hilfe, sie hat mir zur Lösung verholfen.... Habe es nun so geregelt....

Neue Klasse CTaxiListe
Code:
package de.soap.dataset.test;

public class CTaxiListe {
    private String mFPID;
    private String mTaxNr;
    private String mFZKID;
    private String mKFZKennz;
    private String mSitze;
    private String mKmStart;
    private String mBaujahr;
    public String getmFPID() {
        return mFPID;
    }
    public void setmFPID(String mFPID) {
        this.mFPID = mFPID;
    }
    public String getmTaxNr() {
        return mTaxNr;
    }
    public void setmTaxNr(String mTaxNr) {
        this.mTaxNr = mTaxNr;
    }
    public String getmFZKID() {
        return mFZKID;
    }
    public void setmFZKID(String mFZKID) {
        this.mFZKID = mFZKID;
    }
    public String getmKFZKennz() {
        return mKFZKennz;
    }
    public void setmKFZKennz(String mKFZKennz) {
        this.mKFZKennz = mKFZKennz;
    }
    public String getmSitze() {
        return mSitze;
    }
    public void setmSitze(String mSitze) {
        this.mSitze = mSitze;
    }
    public String getmKmStart() {
        return mKmStart;
    }
    public void setmKmStart(String mKmStart) {
        this.mKmStart = mKmStart;
    }
    public String getmBaujahr() {
        return mBaujahr;
    }
    public void setmBaujahr(String mBaujahr) {
        this.mBaujahr = mBaujahr;
    }
    
    /**
     * dies wird in der ListView angezeigt....
     */
    @Override
    public String toString()
    {
        return "Taxi " + this.mTaxNr;
    }
    
}
In der entsprechenden Activity habe ich es nun per ArrayAdapter den Inhalt an das ListView übergeben...
Code:
    private void zeigeTaxiListe()
    {
        CTaxiListe[] cList = (CTaxiListe[]) mTaxiListe.toArray(new CTaxiListe[mTaxiListe.size()]);
        final ArrayAdapter<CTaxiListe> dSaetze = new ArrayAdapter<CTaxiListe>(this, android.R.layout.simple_expandable_list_item_1,cList);
        setListAdapter(dSaetze);
    }
Ich vermute mal, das der ArrayAdapter immer die Property .toString() anzeigt, jedenfalls musste ich dieses Property in der Klasse einfügen, da ich sonst in der ListView nur Kauderwelch stehen hatte...

Vielen Dank nochmal für deine Hilfe

Jens
jmediaNet ist offline   Mit Zitat antworten
Antwort

Stichworte
listview, vector

Themen-Optionen
Ansicht


Ähnliche Themen

Thema Autor Forum Antworten Letzter Beitrag
listView matth1as Android App Entwicklung 5 19.08.2011 02:43
Listview krackmoe Android App Entwicklung 2 07.03.2011 15:29
listView.setChoiceMode() in einer custom ListView mr.freeze Android App Entwicklung 0 16.02.2011 09:57
ListView Patwerk Android App Entwicklung 5 11.10.2010 10:31
Android GUI PSD Vector Kit ses Android App Entwicklung 0 30.08.2009 12:53




Du liest gerade: "Vector 2 ListView" unter "Android App Entwicklung" auf Android-Hilfe.de.


Powered by vBulletin®
Copyright ©2000 - 2012, vBulletin Solutions, Inc.
Search Engine Friendly URLs by vBSEO
© Android-Hilfe.de 2012 - All rights reserved.