2012-08-06 20 views
6

Android cihazında yeniyim. Etrafta arama yaptım ancak Android'de iOS'un NSdictionary gibi bir iş bulamadı. iOS Örneğin benAndroid'de NSDictionary gibi bir şey var mı?

Array 
    idx1: [objA1 for keyA],[objB1 for keyB],[objB1 for keyC] 
    idx2: [objA2 for keyA],[objB2 for keyB],[objB2 for keyC] 
    idx3: [objA3 for keyA],[objB3 for keyB],[objB3 for keyC] 

Ben android

<string-array name="list_obj1"> 
    <item>ObjA1</item> 
    <item>ObjB2</item> 
    <item>ObjC3</item> 
</string-array> 
<string-array name="list_obj2"> 
    <item>ObjB1</item> 
    <item>ObjB2</item> 
    <item>ObjB3</item> 
</string-array> 
<string-array name="list_obj3"> 
    <item>ObjC1</item> 
    <item>ObjC2</item> 
    <item>ObjC3</item> 
</string-array> 

Benim söz konusu böyle benzer işe dize dizisi oluşturabilir biliyorum bu biçimde gibi sözlüğün BASİT dizi oluşturabilir eğer orada Android gibi iOS içinde AN sözlük dizisi oluşturmak için kullanılan başka bir şey.

Yardımlarınız için teşekkür ederiz.

cevap

14

Birincisi, o zaman daha fazla bilgi için arama yapabilirsiniz bu şeyler hakkında çok öğretici olduğunu düşünüyorum. Android'e yeni olduğunuzdan, arama yapmak için "ismi" bilmiyor olabilirsiniz. Bu durumda, "HashMap" aradığınız şeydir. NSdictionary gibi çalışır.

//Create a HashMap 
Map <String,String> map = new HashMap<String,String>(); 
//Put data into the HashMap 
map.put("key1","Obj1"); 
map.put("key2","Obj2"); 
map.put("key3","Obj3"); 

// Now create an ArrayList of HashMaps 
ArrayList<HashMap<String, String>> mylist = new ArrayList<HashMap<String, String>>(); 

//Add the HashMap to the ArrayList 
mylist.add(map); 

Artık bir dizi sözlükten hoşlanıyorsunuz.

Bu yardımın umarım.

+0

hızlı yanıt için teşekkürler, ama cevap SADECE birini bir sözlük oluşturmak içindir. Bir dizi sözlük arıyorum. Lütfen yardım et! – JHHoang

+0

Teşekkürler. Aradığım şey bu. Teşekkür ederim. – JHHoang

+0

Harika cevap, teşekkürler –

2

Sen user1139699 @ bir ArrayList içine söylediklerini koyabilirim. Ayrıca böyle bir dosya yüklemek isterseniz

ArrayList<HashMap> list = new ArrayList(); 

Map <String, String> map = new HashMap<String,String>(); 
map.put("key","Obj"); 

list.add(map); 
+0

Cevabınız için teşekkürler. @ user1139699'un cevabı bu durumda aradığım şey. – JHHoang

0

:

property.key.1=value of 1st key 
property.key.2=value of 2nd key 
prompt.alert = alert 

siz) (java Özellikler 'kullanabilir vb; Ardından her tuşun değerini anında alabilirsiniz.



Açıklama: örneğin You have

bir dosya myTranslations.txt. Bu dosyada formatında tuşları/değer çiftlerini yazma:

property.key.1=value of 1st key 
property.key.2=value of 2nd key 
prompt.alert = alert 

nerede "=" dir tuşundan önce parçasıyız sonra değerdir.

Sonra kodunuzda yapmanız: filePath yolu üzerinde bulunmak olduğunu

Properties properties = new Properties(); 

    File propertiesFile = new File (filePath); 
    FileInputStream inputStream = null; 
    try { 
     inputStream = new FileInputStream(propertiesFile); 
     properties.load(inputStream); 
    } catch (IOException ioe) { 
     ioe.printStackTrace(); 
    } 

. o txt dosyasında olduğu gibi

alert 

: dize döndürür

properties.get("prompt.alert") 

:

Sonra her anahtarın değerini elde edebilirsiniz.

o upvote memnun yardımcı olursa.

+0

Bunun hakkında daha fazla bilgi verir misiniz lütfen? – JHHoang

İlgili konular