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的Call not sent问题 程序运行出现异常,有高手帮我解决一下!!谢谢!!! 求助ZoomButton的用法, 怎么拖拽画布(canvas)上的画笔路径(path) 请教关于动态生成RadioButton的问题 问下安卓的分享功能,代码怎么写? Android UI设计原则 【个人作品】高强度加密笔记本 Android中如何实现类似windows中的那种按图标查看按缩略图查看样式了切换 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();
}
};