当前位置:编程学习 > wap >>

android 进度条progressDialog假死?

哪位大神知道为什么下面这段代码在sleep(3000)这段时间进度条是转的为什么进入HANDLER后就不转了;后台的程序照常走,就是那个圈不在转了。就像假死了似得。getDate()是一个http请求的方法返回json
progressDialog = new ProgressDialog(ShowResult.this);
progressDialog.setProgressStyle(ProgressDialog.STYLE_SPINNER);
progressDialog.setTitle("请稍等...");
progressDialog.setMessage("正在执行");
progressDialog.setCancelable(true);
progressDialog.show();
// setTitle
//dialog0.setButton((CharSequence) "取消", thread);
Thread thread=new Thread(new Runnable() {
@Override
public void run() {
Looper.prepare();
try {
Thread.sleep(2000);
Message msg=new Message();
handler.sendMessage(msg);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
});
thread.start();
}
Handler handler=new Handler(){

@Override
public void handleMessage(Message msg) {
//super.handleMessage(msg);
 final List<Map<String,Object>> list= getData();
SimpleAdapter adapter=new SimpleAdapter(ShowResult.this,list, R.layout.listtest,new String[{"name","tel","store","Kaddress","snum"},new int[]{R.id.name,R.id.telNum,R.id.storeAddress,R.id.keyAddress,R.id.snum});
//resListView.setAdapter(new ArrayAdapter<String>(ShowResult.this, android.R.layout.易做图_expandable_list_item_1,getData()));
resListView.setAdapter(adapter);
resListView.setOnItemClickListener(new OnItemClickListener() {

@Override
public void onItemClick(AdapterView<?> parent, View view,
int position, long id) {
//Toast.makeText(ShowResult.this, "点击的第"+(position+1), Toast.LENGTH_SHORT).show();
Map<String,Object> map=list.get(position);
String lendpopname=String.valueOf(map.get("name"));
String keyaddress=String.valueOf(map.get("Kaddress"));
String snum=String.valueOf(map.get("snum"));
SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String createtime=sdf.format(new Date());
dialog(lendpopname, keyaddress, createtime);
}

});
progressDialog.cancel();
//sp.play(miuceNum, 1, 1, 0, 0, 2);  
}
}; Android 进度条  线程
补充:移动开发 ,  Android
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,