2015-10-06 78 views
0

我有一個ListView從網站獲取文本。它從這樣的文本文件中讀取這樣的數據: 名稱 地址 號碼 並且textfile是每個人具有的id的名稱。現在我想在按列表視圖項目時得到id,是否有將數據存儲在listview項目中的方法? 感謝Android ListView隱藏數據

+0

請發佈您的代碼。 – Jas

+2

您必須爲listview和json解析器創建自己的自定義適配器和自定義視圖。方式太寬泛,不能在這裏解釋,很多次都是迴應。發佈您的代碼到目前爲止。 http://stackoverflow.com/help/how-to-ask –

+0

使用像這樣的適配器:'ArrayAdapter '其中'Person'類保存您的所有數據 – pskink

回答

0

你需要編寫一個自定義適配器,而不是隻使用ArrayAdapter。

這裏是一個示例: https://github.com/kweaver00/android-learning/blob/master/ListView/CustomAdapter%20-%20Custom%20Rows/CustomAdapter/app/src/main/java/com/weaverprojects/customadapter/CustomAdapter.java

所以你要在CustomAdapterClass寫:

CustomObjectThatHasJustStringAndId singleRow = data.get(position); 

holder.text1.setText(singleRow.getString()); 

holder.text1.setOnClickListener(new View.OnClickList.... 

而且在點擊動作:

int id = singleRow.getId(); 

在活動文件:

ArrayList<CustomObjectThatHasJustStringAndId> data = new ArrayList<>(); 
CustomAdapter mCustomAdapter = new CustomAdapter(this, R.layout.custom_layout, data); 
0

如果使用ViewHolder然後在任何意見你ViewHolder您可以:

viewHolder.someTextView.setTag(id); 

和檢索相同的值:

(String) viewHolder.someTextView.getTag() 
+0

我只是用這個'adapter = new ArrayAdapter (this, R.layout.custom_list,listItems); list.setAdapter(adapter); ' –

+0

您需要編寫自己的自定義適配器實現,編寫一個擴展'ArrayAdapter'的類 – JavaGhost