关于progressdialog 执行任务完怎么自动消失 不用thread

问题描述

List<PhoneGis> list = dbService.findAll();if (list.size() != 0) {//简介写法mTextView.setText("发送开始...");progressdialog = ProgressDialog.show(BeginInspection.this, "请稍等片刻...", "开始发送据...");// 让ProgressDialog显示progressdialog.show();}PhoneGis p;for (int i = 0; i < list.size(); i++) {p = list.get(i); String content ="userphone=" + p.getUserphone() + "&imei=" + imei + "&timestamp=" + p.getTimestamp(); if (i == list.size()-1) { progressdialog.setOnDismissListener(new DialogInterface.OnDismissListener() {@Overridepublic void onDismiss(DialogInterface dialog) {mTextView.setText("发送结束...");Toast.makeText(getApplicationContext(), "发送结束...", Toast.LENGTH_SHORT).show();}}); } if (sendDate(content)) { progressdialog.dismiss();dbService.delete(p.getId());System.out.println("时间====" + p.getTimestamp());}}代码如上 为什么点击按钮 不能显示progressdialog = ProgressDialog.show(BeginInspection.this, "请稍等片刻...", "开始发送据...");这个toast 而是 等循环体结束后才显示 然后在继续显示 结束 如果要想实现 点击按钮 显示toast 开始发送数据 然后循环结束后显示 toast 发送结束 该怎么实现呢??? 问题补充:Rainbow702 写道

解决方案

还是建议你使用 AsyncTask 来实现,你可以从我的博客中的这篇文章中下载实例,非常之简单的http://rainbow702.iteye.com/admin/blogs/1154918
解决方案二:
new Thread(new Runnable({ public void run(){ PhoneGis p;for (int i = 0; i < list.size(); i++) {p = list.get(i); String content ="userphone=" + p.getUserphone() + "&imei=" + imei + "&timestamp=" + p.getTimestamp(); if (i == list.size()-1) { progressdialog.setOnDismissListener(new DialogInterface.OnDismissListener() {@Overridepublic void onDismiss(DialogInterface dialog) {mTextView.setText("发送结束...");Toast.makeText(getApplicationContext(), "发送结束...", Toast.LENGTH_SHORT).show();}}); } if (sendDate(content)) { progressdialog.dismiss();dbService.delete(p.getId());System.out.println("时间====" + p.getTimestamp());}} }})).start();
解决方案三:
这种操作推荐你使用 AsyncTask 类来实现,非常方便
解决方案四:
因为你把所有的这几个操作都放在了主线程(即 UI 线程)中执行了,这样当然不行,你需要把另起一个线程来执行你的 循环 操作

时间: 2024-12-03 12:17:50

关于progressdialog 执行任务完怎么自动消失 不用thread的相关文章

Win7打印机发送打印命令后不打印自动消失怎么办

  Win7打印机发送打印命令后不打印自动消失怎么办          当我们遇到给打印机发送打印命令,打印机不反应的状况,过30秒左右打印命令会突然消失,我们先不要着急,这是因为打印机打印时需要调用Windos目录下的一个临时文件夹Temp暂时存储,而这个文件夹已丢失,添加即可.在Windos添加Temp的文件夹目录如下C:\Windows\ServiceProfiles\LocalService\AppData\Local\Temp\ 1.打开[我的计算机]-[C盘]中的[Windows]文

c#弹出一个消息框,3秒后自动消失

问题描述 c#弹出一个消息框,3秒后自动消失 发现c#中MessageBox没有构造函数,无法生成对象,就无法销毁对象,请问如何实现这个功能? 解决方案 http://nxhujiee.blog.163.com/blog/static/298444220155238351302/http://www.cnblogs.com/ap0606122/archive/2012/10/23/2735325.htmlhttp://blog.csdn.net/huangshunle/article/detai

apsx-jquery控制自动消失的弹出框

问题描述 jquery控制自动消失的弹出框 我在实现弹出框自动消失这个功能时,遇到一个问题,就是我点击一下button,会执行一次"出现-消失"一次,但是如果我连按很多次button,它会一直执行"出现-消失"按的次数次,怎么解决? function MsgBoxShow() { $("#DivMsgBox").fadeIn(); $("#DivMsgBox").fadeOut(2500); } 解决方案 fadeIn之前先判

jquery 提示信息显示后自动消失的具体实现

 让提示信息显示后自动消失的方法有很多,在本文为大家介绍下使用jquery是如何做到的,感兴趣朋友可以参考下 经常需要做让一个提示信息显示几秒然后自动消失的效果,之前是用setTimeout去实现,但是发现如果页面上有多个setTimeout就不太好.今天找到了两个很简单的方法.mark一下.  方法一:   代码如下: $("#errormsg").html("您的信息输入错误,请重试!").show(300).delay(3000).hide(300);   

winform-C# Winform项目,如何实现关闭退出第三方应用程序同时将在任务栏右下角的图标也自动消失

问题描述 C# Winform项目,如何实现关闭退出第三方应用程序同时将在任务栏右下角的图标也自动消失 在退出"CBOX央视影音"在线视频播放的App客户端时,该视频播放的App客户端已经成功退出(包括在Windows任务管理器中CBox的进程), 但是"CBOX央视影音"图标在任务栏的右下角还显示,需要鼠标手工移动到此处才消失. 如何实现在退出"CBOX央视影音"在线视频播放的App客户端时,自动将在任务栏右下角的图标也自动消失. 请问如何修改

eclipse- 收藏 Eclipse调试的时候LogCat自动消失,什么原因?

问题描述 收藏 Eclipse调试的时候LogCat自动消失,什么原因? LogCat出来的信息,几秒之后就自动消失了. 每次还没来得及看错误信息,它就消失了! 有人说是因为内容太多了的原因, 但是好像不是,我自己的System.out才几条信息,也是出来几秒就自动消失了! 还有一个问题,就是eclipse识别不到真机,必须开着360手机助手/或者是豌豆荚才能识别到真机.有人说可能是360手机助手和豌豆荚的原因,我试着把两个都卸载了,驱动也卸载重装了,还是不行,识别不了,adb.exe我也去网上

测试-Android Studio最后那个Import 语句 输入后就自动消失了,为何?

问题描述 Android Studio最后那个Import 语句 输入后就自动消失了,为何? 下面是我买的陈承欢老师 的书的代码,我按部就班学习. 真机测试发现 正常加载,但无法响应 触摸事件.分析发现 题中的那个Import 没有,而且输入后自动消失了.其他的 Import 都是在输入 Class代码后自动添加的,惟独那一句无法添加.求大神分析. 发了几个问题的邮件给作者,都没有回复.故请大神帮忙! 刚来,悬赏. 谢谢了! package com.example.app0401_44; imp

onrestart()-handler在当前activity执行onStop()方法后不消失

问题描述 handler在当前activity执行onStop()方法后不消失 在当前activity有一个handler,在被其他activity覆盖后,重新onRestart()后,handler就为空了,用什么方法可以让这个handler重新启动不为空 解决方案 或者 handler定义在application中; 解决方案二: 用static,静态声明handler

wifi自动下载-一款APP,叫做魔力盒,在连接wifi的时候自动下载三个视频,看完后自动删除。请问这是怎么实现的

问题描述 一款APP,叫做魔力盒,在连接wifi的时候自动下载三个视频,看完后自动删除.请问这是怎么实现的 一款APP,叫做魔力盒,在连接wifi的时候自动下载三个视频,看完后自动删除.请问这是怎么实现的 解决方案 这个应用还是需要先在手机上安装应用,然后才可以下载的.不是连接以后自动就下载了. 解决方案二: 创建服务,一直在后台运行,监听wifi状态广播,当wifi连好后后台下载视频到本地 解决方案三: 魔力盒,难道不是种子神器 解决方案四: 说下思路吧,希望对你有用吧: 1.创建广播接收器监