Mehrere String[] im "Array"Adapter?

C

cyrus

Neues Mitglied
0
Hallo Leute,

Erstmal muss ich sagen, dass das Forum hier super ist und ich seit ein paar Wochen immer weider nützliche Sachen gefunden habe :)

Jetzt habe ich aber leider ein Problem, dass ich nicht gefunden habe (weil ich auch nicht wusste wo ich suchen soll).

Ich habe 3 String[] 's und will diese auf einer Seite darstellen. Mit einem String[] gibt es ja die Möglichkeit die Funktion ArrayAdapter zu verwenden.
Ich habe mir auch den SimpleCursorAdpater angeschaut, aber diesen kann man ja nur mit einer Datenbank verwenden (wenn ich das richtig verstandne habe).

Die Darstellung wollte ich am Liebsten so haben:

ErsterString[0] ZweiterString[0]
DritterString[0]
------------------
ErsterString[1] ZweiterString[1]
DritterString[1]
------------------
usw.

Kann man sich so vorstellen wie:
Titel Datum
Text

Mit einem SimpleCursorAdapter würde das ja sehr einfach gehen, das Problem ist nur, dass ich keine Datenbank verwende, sondern die Strin[] 's aus einem REST WebService raus hole und eigentlich nicht umbedingt in eine Datenbank speichern wollte ;-)

Hoffe ich habe mich halbwegs klar ausgedrückt und es kann mir einer sagen, was ich da verwenden soll, weil ich irgendwie ansteh und auch nicht weiß an welchem Eck ich da nachlesen soll... Die meisten Hits in Google sind zum Thema SimpleCursorAdapter und auch in meinem Buch Android2 wird praktisch NUR der SimpleCursorAdapter besprochen ...

Den Cursor kann man ja nur für DBs verwenden und nicht für Objekte / Arrays oder? (zumindest habe ich das so verstanden)

lg
Cyrus
 
Entweder einfache Konkenation mit
StringA+StringB+"\n"+StringC

oder du musst deinen eigenen Adapter bauen.
Dafür definierst du die 3 TextViews in xml (zb)
und überschreibst die getView Methode entsprechend..
Code:
public View getView(int position, View convertView, ViewGroup parent) {
            ViewHolder holder; //statische innere klasse
            if(convertView == null){
                convertView = mInflater.inflate(R.layout.meinLayout, null);
                holder = new ViewHolder();
                holder.text1 = (TextView)convertView.findViewById(R.id.text1);
                holder.text2 = (TextView)convertView.findViewById(R.id.text2);
                holder.text3 = (TextView)convertView.findViewById(R.id.text3);
                convertView.setTag(holder);
            }
            else{
                holder = (ViewHolder)convertView.getTag();
            }
            holder.text1.setText(StringA[position]);
            holder.text1.setText(StringB[position]);
            holder.text1.setText(StringC[position]);
            return convertView;
        }
siehe auch List14.java in den google demos.
 
  • Danke
Reaktionen: cyrus
Danke für deine schnelle Antwort :)

Leider geht das mit dem \n nicht, aber das getView zu überschreiben ist eine interessante Lösung :) Leider finde ich aber diese List14.java nicht :confused2: hättest du da einen Link dazu?

Irgendwo habe ich mal gelesen, dass man Performance-Probleme bekommen kann wenn man die getView Methode überschreibt, stimmt das und wenn ja auf was muss man da aufpassen`?

lg
Cyrus
 

Ähnliche Themen

R
Antworten
6
Aufrufe
1.014
swa00
swa00
D
  • djsnoopy
Antworten
6
Aufrufe
617
djsnoopy
D
S
Antworten
8
Aufrufe
512
swa00
swa00
Zurück
Oben Unten