在Listview布局文件中加入choicemode = “singleChoice”即可实现点击item的选中效果。
如果不想要选中效果只需要myList.setSelector(new ColorDrawable(Color.TRANSPARENT));
但是默认效果的问题是单击某个item选中之后,再点击一次,并没有去掉选中的效果。
我目前的解决方法是通过position判断是否选中相当位置,再通过isSelected判断当前状态
如果position与上次点击的position相当,且上一次的状态是选中,则通过myList.setSelector(new ColorDrawable(Color.TRANSPARENT));
将背景设成原来的样子,并将isSelected状态改为Unselected
具体代码如下:
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
myList.setSelector(new ColorDrawable(getResources().getColor(R.color.gray_white)));
if (position==prePosition){
if(isS