我在列表視圖中有兩個編輯文本和文本視圖。文本視圖值是從Sq lite通過適配器設置的,我在列表視圖外有一個按鈕。我的問題是當我點擊按鈕時,每個編輯文本中的值將被存儲到一個數組中,之後我可以再次將它存儲到SQLite中。但是在運行代碼時我會得到空值。我嘗試了很多其他方法但失敗的方法。請幫助獲得答案。如何從按鈕點擊列表視圖中獲取編輯文本值
這裏是我的代碼
protected void InsertDb() {
// TODO Auto-generated method stub
View v;
HashMap<String, String> itemdata = new HashMap<String, String>();
for (int i = 0; i < list.getChildCount(); i++) {
v = list.getAdapter().getView(i, null, null);
cases = (EditText) v.findViewById(R.id.cases);
pcs = (EditText)v.findViewById(R.id.pcs);
itemdata.put("cases", cases.getText().toString());
itemdata.put("pieces", pcs.getText().toString());
}
Log.v("working correctly", itemdata.toString());
}
this is how my activity looks like 提前謝謝..
這不是你如何從適配器讀取視圖。 'getView'就是你調用它的方式,只返回空'EditText'。你能詳細說明你想達到什麼嗎? – hoomi
@ hoomi我只想從編輯文本中獲取值。這個編輯文本駐留在列表視圖中。由於列表視圖的大小很大,每次運行應用程序時都不需要在所有編輯文本中輸入值。有些可能保持爲空。我想要通過迭代列表視圖來輸入編輯文本中輸入的值。 – Bivin