我有一个列表视图,该列表包含 2 个项目,一个 TextView 和一个基于某些逻辑的 Button/EditText,如表格行中的 2 列。
现在在布局中,我有列表视图,我也有一些按钮说保存。当我单击保存时,我应该在 Listview 所在的 Activity 中检索 Button/EditText 的值,并且需要将它们存储在 db 中。
我无法弄清楚这种情况。可能有许多列表行,例如如果有 5 个列表行,则需要从位置 0-4 检索每个值。
请查看下面的屏幕截图以了解列表视图的外观。
希望你能看到右边的字段。评论旁边是编辑文本,发货日期旁边是一个按钮。
有人可以帮我或建议我吗?
更新:
我现在正在迭代列表视图,如下所示,
View vr;
EditText ee;
for (int i=0;i<=list.getLastVisiblePosition()-list.getFirstVisiblePosition();i++) {
//vr = list.getChildAt(i);
vr = list.getAdapter().getView(i, null, null);
ee = (EditText) vr.findViewById(i);
System.out.println(ee.getText().toString());
}
在这种情况下,Edittext ee 始终为空。我试过取消注释 vr = list.getChildAt(i); 但它仍然返回null。
根据某些要求,此处可以有 Edittext ee 或位于同一 i 位置的其他按钮。但我不明白为什么 ee 为空。
在这里引用了答案Iterate through ListView and get EditText-Field values。
有什么想法我哪里出错了吗?