Android 在列表视图中选中某行中的复选框时,也会选中一些其他复选框。(安卓系统)
在列表视图中选中某行中的复选框时,也会选中一些其他复选框。在android中。有人知道为什么会出现这个问题吗?以下是我的源代码:Android 在列表视图中选中某行中的复选框时,也会选中一些其他复选框。(安卓系统),android,listview,Android,Listview,在列表视图中选中某行中的复选框时,也会选中一些其他复选框。在android中。有人知道为什么会出现这个问题吗?以下是我的源代码: dbHelper db1 = new dbHelper(WaterPopup.this); waterList = new ArrayList<HashMap<String, Object>>(); map1 = new HashMap<String, Object>(); Cu
dbHelper db1 = new dbHelper(WaterPopup.this);
waterList = new ArrayList<HashMap<String, Object>>();
map1 = new HashMap<String, Object>();
Cursor c1 = db1.getMenuDetailsData(SubMenuID);
c1.moveToFirst();
while (c1.isAfterLast() == false) {
if (c1.getString(3).substring(0).equals("I")) {
map1.put("WaterOptionID", c1.getString(5).substring(0)) ;
map1.put("CheckBox",cb);
map1.put("WaterOptionName", c1.getString(0).substring(0));
map1.put("MinusImg",R.drawable.minus_30+"");
map1.put("Quantity","1");
map1.put("PlusImg",R.drawable.plus_30+"");
map1.put("Currency","$");
map1.put("Price", c1.getString(2).substring(0));
map1.put("OrderStatusImg",R.drawable.round_25+"");
waterList.add(map1);
map1 = new HashMap<String, Object>();
}
c1.moveToNext();
}
c1.close();
mSchedule = new SimpleAdapter(WaterPopup.this, waterList, R.layout.waterlistitem,
new String[] {"WaterOptionID","CheckBox", "WaterOptionName", "MinusImg", "Quantity","PlusImg","Currency", "Price", "OrderStatusImg"},
new int[] {R.id.wateroptionID_tv,R.id.orderWater_cb, R.id.wateroptionName_tv, R.id.minussign_btn, R.id.Qty_tv, R.id.plusimage_btn,R.id.currency_tv,R.id.price_tv,R.id.orderStatus_btn});
OrderWaterItem.setAdapter(mSchedule);
仅支持文本视图:
构造函数中“to”参数的说明:
应在from参数中显示列的视图。这些都应该是文本视图。此列表中的前N个视图提供了from参数中前N列的值。您必须覆盖适配器。这并不难。看这里: 在这里:
@Neha,也许你可以编辑你的原始问题并解释你的进度,而不必删除原始代码,也可以发布新代码。很难在评论中看到它。但是我知道你在问什么,当你滚动时,当框离开屏幕时,会被取消选中吗?您只需要选中一个复选框?如果它离开屏幕,被取消选中,而你提交,它的行为是否会像未选中一样?@trgraglia:是的,你是对的。我在listview的每一行上都有复选框。当我滚动列表时,复选框的状态将丢失。@Neha,我不熟悉自定义适配器中是否有小部件对象,但也许您可以设置一些断点并进行调试,看看是否在每次出现小部件时都调用它们。然后,您可能会在适配器上设置一个布尔值,当复选框返回视图时,它会检查布尔值并变为选中或不选中。@trgraglia:我得到了答案。这个链接帮助了我。我刚刚在你的文章中添加了这个链接,因为它被隐藏在这里,人们不会看到它。。。如果您愿意,可以随意编辑和格式化。