赞
踩
主要思路:
在listview的适配器中写一个设置位置的方法,如:
- public void setSelectedPos(int pos){
- this.pos=pos;
- }
listview设置item监听,在监听中将当前选中的item传给适配器并通知后台刷新界面,如:
- classlist.setOnItemClickListener(new AdapterView.OnItemClickListener() {
- @Override
- public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
- classAdapter.setSelectedPos(position);
- classAdapter.notifyDataSetChanged();
- // tv_select.setText();
-
- }
- });
最后,在适配器的getview方法中判断生成的view位置是否是选择的位置,如果是则设置背景为白色,否则,为另一个颜色,例如:
- if (pos==position)
- view.setBackgroundColor(Color.WHITE);
- else view.setBackgroundColor(context.getResources().getColor(R.color.mygray));
需要特别注意的就是在监听中设置之后要通知后台刷新界面,不然不会出现效果。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。