listView.setOnItemClickListener(new OnItemClickListener() {
@SuppressWarnings("unchecked")
@Override
public void onItemClick(AdapterView<?> parent, View view, int position,
long id) {
// TODO Auto-generated method stub
Map<String, Object> map = (Map<String, Object>)adapter
.getItem(position);
String device_id = (String)map.get("device_id");
String temperature = (String)map.get("temperature");
String humidity = (String)map.get("humidity");
ImageView image = (ImageView)view.findViewById(R.id.led);
//设置打开和关闭相应的灯图片,通过当前状态的图片与对比资源中固定的图片对比来设置相应的图片,这里是与打开的图片对比
//如果下面没有加上 getConstantState(),则相当于多次调用getDrawable(),产生几个不同的对象,对比时同一张图,结果也是不同的 if(image.getDrawable().getConstantState().equals(getResources().getDrawable(R.drawable.open).getConstantState()))
{
image.setImageResource(true ? R.drawable.close : R.drawable.open);
}
else {
image.setImageResource(true ? R.drawable.open : R.drawable.close);
}
//设置弹出对话框
new AlertDialog.Builder(MainActivity.this)
.setTitle("设备:"+device_id)
.setMessage("温度:"+temperature+" 湿度:"+humidity)
.setPositiveButton("确定", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
}
})
.setNegativeButton("取消", null)
.show();
}
});
点击listview时对其中的图片进行改变
最新推荐文章于 2017-07-03 16:55:31 发布