gpt4 book ai didi

android - 更新 getCheckedItemPositions()

转载 作者:行者123 更新时间:2023-11-29 00:39:09 24 4
gpt4 key购买 nike

我正在使用带有复选框的 ListView 并将其设置为 multi_choice。

如果我一次性执行 getChekeItemPositions 以获取选中的 ListView 项,一切正常。

但是,如果我再次执行此操作并取消选中其中一项,它仍算作已选中。我只能将更多项目添加到“已检查”。如何解决?

sp = new SparseBooleanArray();
lTransfer = new ArrayList<String>();
ListView info = (ListView)findViewById(R.id.info);
sp = info.getCheckedItemPositions();
Log.d("Watcher","Arraysize:" + sp.size());
for(int i = 0; i< sp.size();i++){
Log.d("Watcher","Arrayfound:" + info.getAdapter().getItem(sp.keyAt(i)).toString().split(":")[0]);
lTransfer.add(info.getAdapter().getItem(sp.keyAt(i)).toString().split(":")[0]);
}


public void updateInfo(){
ListView info = (ListView)findViewById(R.id.info);
info.setChoiceMode(ListView.CHOICE_MODE_MULTIPLE);
info.setItemsCanFocus(false);
info.setOnItemClickListener(new InfoListener());

lSpin = new ArrayAdapter<String>(this, R.layout.list_item, lToAdd);
info.setAdapter(lSpin);
}

最佳答案

我遇到过同样的问题......所以创建看起来像 multi_choice listview 的布局并在你的自定义适配器中膨胀并在适配器本身中注册像 OnClickListener() 监听器这样的事件......

关于android - 更新 getCheckedItemPositions(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10582526/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com