0
我產生了ListView
所看到如下從按鈕獲得點擊每一行中的ListView
我沒有足夠的代表,發佈圖片,你將不得不破譯我的網址:image
的藍色行上述圖像中的被填充使用HashMap
:
private void showListView(JSONArray rows, JSONArray totals){
final ListView list = (ListView) findViewById(R.id.historylist);
ArrayList<HashMap<String, String>> mylist = new ArrayList<HashMap<String, String>>();
HashMap<String, String> map;
String[] titles = new String[]{"recordID","date","description","num1","num2"};
SimpleAdapter mSchedule = null;
try{
for(int i=0;i<rows.length();i++){
map = new HashMap<String, String>();
for(int n=0;n<allRows.getJSONArray(i).length();n++){
map.put(titles[n], allRows.getJSONArray(i).getString(n));
}
mylist.add(map);
}
mSchedule = new SimpleAdapter(
History.this,
mylist,
R.layout.history_row,
titles,
new int[] {R.id.textView0, R.id.textView1, R.id.textView2, R.id.textView3, R.id.textView4}
);
list.setAdapter(mSchedule);
}catch(Exception e){
Log.e("Creating ListView", e.toString());
}
}
<LinearLayout >
<LinearLayout >
<LinearLayout >
<TextView (recordID) />
<TextView (date) />
<TextView (num1) />
<TextView (num2) />
</LinearLayout>
<TextView (description) />
</LinearLayout>
<LinearLayout (When this one is clicked) >
<ImageView />
</LinearLayout>
當上述圖像中的綠色按鈕後,我還想得到藍色行的信息。
(日期,描述,NUM1,NUM2)
另外,如果你想有一個更好的方式來填充ListView
,請讓我知道。
對不起,但你完全失去了我。沒有在代碼中看到這一點,我不知道如何設置它。我試着跟隨你的每一個鏈接並把代碼放在一起,但它看起來像弗蘭肯斯坦。 – gatzkerob 2012-04-15 05:33:34
有沒有簡單的方法來做到這一點?我在一行中有一個線性佈局,當點擊線性佈局時,我想獲得行信息。 – gatzkerob 2012-04-15 23:38:49
我沒有完成你所建議的所有內容,但是我擴展了'BaseAdapter'並發現了它的特性的缺點。謝謝。 – gatzkerob 2012-05-01 03:48:39