需求很简单,在listview中 先给item的imageview设置了一张图片A,设置点击事件在onclick方法中更换成另一一张图片B,但是点击后没有效果,打印log看到已经调用了该方法。holder.bus_icon.setImageResource(R.drawable.bus_blue);
holder.bus_icon.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
Log.i("i", "点击图标了+test11" + position);
holder.bus_icon.setImageResource(R.drawable.bus_red);
adapter.notifyDataSetChanged();
}
});
holder.bus_icon.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
Log.i("i", "点击图标了+test11" + position);
holder.bus_icon.setImageResource(R.drawable.bus_red);
adapter.notifyDataSetChanged();
}
});
解决方案 »
- android的资源是如何管理的?
- 菜鸟求助,多谢指导!
- 如何学习android应用开发(主要是模仿品牌机的UI及获得认可多的UI,比如GO桌面,MIUI)
- 关于android中ListView使用的问题
- textView 设置颜色的问题
- 求助,listview的imgebutton显示问题。。
- 关于调用第三方office软件操作office文档
- ubuntu下的android源码文件夹全变成可执行文件,怎么变回来?
- 多activity还是单activity的选择
- android studio打开源码出现android.annotation里面的类飘红
- 大家帮忙投票,谢谢
- 请教下Launcher的问题
一般不都是onItemClickListenter么
然后通过switch(position)来判断点击事件啊。
水平不高,没看明白你的代码。。
这个导致ListView重新刷新了,所以图片还是原来的图片,没变
if (isblue) {
bus_icon.setImageResource(R.drawable.bus_blue);
} else {
Log.i("i", "变色了" + isblue);
bus_icon.setImageResource(R.drawable.bus_red);
}
bus_icon.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
Log.i("i", "点击图标了+test11");
isblue = false;
adapter.notifyDataSetChanged();
}
}); 不刷新adapter也不行,又换了种方式感觉没什么问题啊
@Override
public void onClick(View v) {
Log.i("i", "点击图标了+test11" + position);
ImageView iv = (ImageView)v;
iv.setImageResource(R.drawable.bus_red);
}