2012-04-04 11 views
0

Ich möchte URLs mit Elementen in einem Zeichenfolgenarray verknüpfen, sodass bei Auswahl eines Elements in einer ListView Daten von der URL abgerufen werden. Ich frage mich, könnte die URL als Metadaten in der Datei strings.xml hinzugefügt werden? Hat jemand Vorschläge, wie es weitergehen soll?Zuordnen von ULRs zu Elementen in einem Zeichenfolgenarray

Antwort

0

Strings.xml ist nicht der richtige Ort. Sie könnten die URLs, einen nach dem anderen, in strings.xml, wie folgt definieren:

<string name="url1">http://foo1.com</string> 
<string name="url2">http://foo2.com</string> 
// etc 

Und dann einen Array zur Laufzeit erstellen, alle diese Werte in einer Eins-zu-Eins-Dumping. Aber das wäre scheiße.

Stattdessen eine XML-Datei in res/Werte /, Namen erstellen es, was auch immer Sie (zum Beispiel urlvals.xml) möchten, und es wie folgt füllen:

<?xml version="1.0" encoding="utf-8"?> 
<resources> 
    <array name="urls"> 
     <item>http://foo1.com</item> 
     <item>http://foo2.com</item> 
    </array> 
</resources> 

Dann im Code, auf sie verweisen auf folgende Weise:

String[] myUrls = getResources().getStringArray(R.array.urls); 
0

Wenn Sie ein Array von String-Ressourcen wollen, können Sie entweder:

1) in die Saiten in strings.xml (per @ Alexander Antwort), und verweisen sie durch Name in einem Array in Werte/yourresourcename.xml wie here.

<?xml version="1.0" encoding="utf-8"?> 
<resources> 
    <array name="myLinks"> 
     <item>@string/link1</item> 
     <item>@string/link2</item> 
    </array> 

2) fügen Sie sie direkt die String-Array (wörtlich) wie @Alexander schlägt

Wie man sie mit den Elementen in der Listview zuzuordnen ist Ihnen überlassen. Ich würde vorschlagen (wenn der Inhalt statisch ist), ein übereinstimmendes Zeichenfolgenarray für (z. B.) die Zeichenfolge zu erstellen, die tatsächlich angezeigt werden soll (im Gegensatz zur Verknüpfung selbst).

Verwandte Themen