gpt4 book ai didi

android - ListView 选中位置总是重置

转载 作者:行者123 更新时间:2023-11-30 03:33:56 25 4
gpt4 key购买 nike

我正在使用 ListView 尝试添加/删除项目。添加位相当容易,但事实证明删除位比较棘手。我在考虑使用多项选择列表,但为了从更简单的事情开始,我选择了单选模式只是为了测试一下。我有一个包含项目的字符串数组,一个数组适配器,用于在数据更改时发出通知。

    expenseAdapter=new ArrayAdapter<String>(this,
android.R.layout.simple_list_item_single_choice,
android.R.id.text1,
expenseList);
myListView.setAdapter(expenseAdapter);
myListView.setOnItemClickListener(new OnItemClickListener() {

@Override
public void onItemClick(AdapterView<?> parent, View item, int position,
long index) {



((ListView)parent).setItemChecked(position, true);

item.setSelected(true);
}

});

我还为项目的 onClick 事件添加了一个监听器。从视觉上看,项目被选中/取消选择问题是当我单击触发删除项目的按钮时,列表中的选定索引始终为 -1,尽管该项目似乎已被选中。

删除带有onClick事件的按钮

public boolean doDelete(View view)
{
ListView myListView= (ListView)findViewById(R.id.list);
String s=(String)myListView.getSelectedItem();

expenseList.remove(s);
expenseAdapter.notifyDataSetChanged();

return true;
}

知道发生了什么或我做错了什么吗?

最佳答案

使用这个

xml文件:https://www.dropbox.com/s/eky9zb275mgt4py/activity_list__addand_delete.xml

java文件:https://www.dropbox.com/s/idqyyosbutgqqbs/List_AddandDelete.java

当您将焦点转移到按钮时,您的选择(焦点)将被删除。

关于android - ListView 选中位置总是重置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16934741/

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