GridView 刷新 SimpleAdapter中的数据,异常! gridview异常数据 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 这样写是否正确,谢谢各位大师 //每个间隔需要运行的任务 class MyTask extends java.util.TimerTask { @Override public void run() { while(true) { if(ComCommunication.CheckReceiveData() == true) { if(ComCommunication.ReceiveData(13) == true) { bReceiveData = ComCommunication.ReceiveData; //接收到的数据进行处理 iDeviceStatus = CheckDeviceStatus(bReceiveData); Handler handler = new Handler(); handler.post(RefreshDeviceStatus); } else { Log.i("接收数据", "接收数据错误"); continue; } } else { Log.i("接收数据", "未接收到有效数据"); } } } } Runnable RefreshDeviceStatus = new Runnable() { public void run() { // TODO Auto-generated method stub alImageItem.clear(); for(int i = 0; i < iDeviceStatus.length; i++) { HashMap<String, Object> map = new HashMap<String, Object>(); map.put("ImageItem", R.drawable.device_running_failure); if(i < 16) { if(iDeviceStatus[i] == 1) { map.put("ImageItem", R.drawable.device_running_failure); } else { map.put("ImageItem", R.drawable.device_running_normal); } } else { if(iDeviceStatus[i] == 1) { map.put("ImageItem", R.drawable.device_running_failure); } else { map.put("ImageItem", R.drawable.station_connection_normal); } } map.put("TextItem", sDeviceList[i]); alImageItem.add(map); } saImageItems.notifyDataSetChanged(); } }; handler是写在oncreate里面的,你在子线程里面不能改变UI线程的视图,所以要在子线程里面handler.sendEmptyMessage();把改变UI的事情交给handler去做, handler重写handleMessage()方法,即handler接收到message后就会触发这个方法,你要改变UI就在这里面实现。 还用谢 Runnable么, handler是在oncreate里面生命么? sendEmptyMessage的参数是什么意思? 关于客户端登陆的问题 Android SurfaceHolder的lockCanvas方法 当上传照片时如何给它重命名 请教 闹钟开发碰到得问题~~~~~ 如何判断手机当前是不是处于待机状态 android 自定义组件属性 问题? 手机页面转换的问题 有搞Janus DRM的吗 android点击按钮出现界面 求助,这个控件是什么!! ListView点击条目改变子控件的背景及显示隐藏的控件 求问ADT在广播中如何下断点
//每个间隔需要运行的任务
class MyTask extends java.util.TimerTask
{
@Override
public void run()
{
while(true)
{
if(ComCommunication.CheckReceiveData() == true)
{
if(ComCommunication.ReceiveData(13) == true)
{
bReceiveData = ComCommunication.ReceiveData; //接收到的数据进行处理
iDeviceStatus = CheckDeviceStatus(bReceiveData);
Handler handler = new Handler();
handler.post(RefreshDeviceStatus);
}
else
{
Log.i("接收数据", "接收数据错误");
continue;
}
}
else
{
Log.i("接收数据", "未接收到有效数据");
}
}
}
}
Runnable RefreshDeviceStatus = new Runnable()
{
public void run()
{
// TODO Auto-generated method stub
alImageItem.clear();
for(int i = 0; i < iDeviceStatus.length; i++)
{
HashMap<String, Object> map = new HashMap<String, Object>();
map.put("ImageItem", R.drawable.device_running_failure);
if(i < 16)
{
if(iDeviceStatus[i] == 1)
{
map.put("ImageItem", R.drawable.device_running_failure);
}
else
{
map.put("ImageItem", R.drawable.device_running_normal);
}
}
else
{
if(iDeviceStatus[i] == 1)
{
map.put("ImageItem", R.drawable.device_running_failure);
}
else
{
map.put("ImageItem", R.drawable.station_connection_normal);
}
}
map.put("TextItem", sDeviceList[i]);
alImageItem.add(map);
}
saImageItems.notifyDataSetChanged();
}
};