2014-12-24 49 views
0

IM麻煩列表視圖。顯示用的Hashmap數據

我有一個HashMap的什麼,我需要一個全局變量(入店超過一個活動)。這個hashmap有一個聯繫人列表,其中的關鍵是它的郵件地址...所以我有雙電子郵件地址,完整的聯繫人數據。這裏是我的代碼:

protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 

    miAgenda= new HashMap<String, contactoAgenda>(); 
    contactoAgenda Eduardo = new contactoAgenda("Eduardo", "c/ Segovia","973", "[email protected]",true, true, false, false, true,"Laboral"); 
    miAgenda.put(Eduardo.getMail(),Eduardo); 

    contactoAgenda Daniel= new contactoAgenda("Daniel", "c/ Diego Madrazo","92458", "[email protected]",true, true, false, false, true,"Familia"); 
    miAgenda.put(Daniel.getMail(),Daniel); 

    contactoAgenda Belen= new contactoAgenda("Belen", "c/ Diego Madrazo","92458", "[email protected]gmail.com",true, true, false, false, true,"Familia"); 
    miAgenda.put(Belen.getMail(),Belen); 


     Toast.makeText(getApplicationContext(), "hola"+miAgenda.size()+"\n" , Toast.LENGTH_LONG).show(); 

     ListView lista=(ListView) findViewById(R.id.listaContactos); 
     ArrayAdapter<contactoAgenda> adaptador = new ArrayAdapter<contactoAgenda>(this,R.id.editText1, (List<contactoAgenda>) miAgenda.get(contactoAgenda); 
     lista.setAdapter(adaptador); 

麻煩的是,我需要顯示所有聯繫人ListView控件LISTA ......我就死在使適配器....我無法找到與任何類似的例子通過HashMap的對象(contactoAgenda的郵件,和自己的對象的所有contactoagenda的所有文件的領域取得了...

任何幫助將apreciated。即時通訊使用API​​ 15.An這裏我是一個noobie。

在此先感謝

+1

僅供參考:具有全球性的HashMap是一個壞主意。相反,考慮有一個內容提供商。事實上,Android立即提供了一個開箱即用的ContactsProviders,這看起來像您可能想要的東西。 – gruszczy

+0

嗯,我需要一個定製contactoAgenda,我有一個數組......不涉及contactsProvider在存儲...感謝您的答覆... –

回答

0

您只需將您的MapArrayList

ArrayAdapter<contactoAgenda> adaptador = new ArrayAdapter<contactoAgenda>(this,R.id.editText1, miAgenda.values(); 

注意,ArrayAdapter將不知道如何正確地顯示contactoAgenda類類型。您可以覆蓋它的toString()方法,該方法將控制如何將其顯示在屏幕上。更恰當地說是執行上與一個getView()實現,可處理contactoAgenda類類型的自定義接口的。

+0

你能更明確,請與做出了榜樣?我還在contactoAgenda中完成了toSTring方法。現在我不知道如何填充所有聯繫人的列表視圖,並顯示例如姓名和電子郵件或姓名和電話(在列表視圖的每個項目中顯示兩個fielsds)。 –

+0

順便說一下......它給了我錯誤的指令,你給我...似乎hashmap不允許miagenda.values ...似乎錯過了a)。雖然它給錯誤.... –