阅读688 返回首页    go 阿里云 go 技术社区[云栖]


ProcessDialog结合Thread处理耗时操作

 很多初入Android开发的网友表示经常遇到ANR这类的UI假死或提示强制关闭的问题,有的网友可能想到通过创建一个Android Service的方式来解决耗时操作的假死,但是Android123还是给大家一个简单实用的方法通过创建一个线程而不是服务的方式来解决耗时操作时的假死或等待。

  在一个名为Android123的Activity中,我们通过一个进度条控件ProgressDialog可以处理很多耗时操作。代码如下

final ProgressDialog dialog = ProgressDialog.show(Android123.this, "标题", "正文", true);  
final Handler handler = new Handler() {  
   public void handleMessage(Message msg) {  
      dialog.dismiss();   //关闭progressdialog
      }  
   };  


Thread cwjThread = new Thread() {    
   public void run() {  

     //这里处理耗时操作,比如文件下载等等。
 
      handler.sendEmptyMessage(0);    //告诉handler
      }  
   };  
cwjThread.start(); 

最后更新:2017-04-02 06:51:46

  上一篇:go HttpClient连接请求超时设置
  下一篇:go Android根据Button状态(normal,focused,pressed)显示不同背景图片