Update: This post was from when I was learning android with android 2.2, be sure to check if this is compatible with the api level you are working with.
四处寻找如何使用计时器加载进度条,我尝试使用已发布的方法,但总是会出现指针异常,或者测试应用程序会在启动时崩溃。
我的问题是,大声笑有没有人看过任何关于如何做到这一点的教程或示例?我在想我所需要的只是一个 while 循环,但还没有看到在计时器上完成的。我是一个完全的菜鸟,但正在缓慢但肯定地学习
我的计时器
final Timer t = new Timer();
t.schedule(new TimerTask() {
public void run() {
d.dismiss(); //MY DIALOG WINDOW
t.cancel();
}
}, 7000);
这是我试图开始工作但认为我造成的伤害比用它做得更好
isRunning = false;
// handler for the background updating
final Handler handler = new Handler() {
public void handleMessage(Message msg) {
total = total - 1;
String perc = String.valueOf(total).toString();
a.setText(perc + " SECONDS until close");
bar.incrementProgressBy(25);
}
};
super.onStart();
// reset the bar to the default value of 0
bar.setProgress(0);
// create a thread for updating the progress bar
Thread background = new Thread(new Runnable() {
public void run() {
try {
for (int i = 4; i < 20 && isRunning; i++) {
// wait 1000ms between each update
Thread.sleep(1000);
handler.sendMessage(handler.obtainMessage());
}
} catch (Throwable t) {
}
}
});
isRunning = true;
// start the background thread
background.start();
希望有人能够为我阐明这一点,一如既往地对简短的通用问题感到抱歉,只是想了解如何使用计时器加载进度条
再次感谢所有帮助
最佳答案
使用android.os.CountDownTimer
countDownTimer = new CountDownTimer(length_in_milliseconds,period_in_milliseconds) {
private boolean warned = false;
@Override
public void onTick(long millisUntilFinished_) {
progressBar.progress = (length_in_milliseconds-millisUntilFinished_)/lenght_in_milliseconds*100.0;
}
@Override
public void onFinish() {
// do whatever when the bar is full
}
}.start();
关于安卓进度条 : loading with Timer,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8397212/
我在Rails应用程序中使用CarrierWave/Fog将视频上传到AmazonS3。有没有办法判断上传的进度,让我可以显示上传进度如何? 最佳答案 CarrierWave和Fog本身没有这种功能;你需要一个前端uploader来显示进度。当我不得不解决这个问题时,我使用了jQueryfileupload因为我的堆栈中已经有jQuery。甚至还有apostonCarrierWaveintegration因此您只需按照那里的说明操作即可获得适用于您的应用的进度条。 关于ruby-on-r
最近因为项目需要,需要将Android手机系统自带的某个系统软件反编译并更改里面某个资源,并重新打包,签名生成新的自定义的apk,下面我来介绍一下我的实现过程。APK修改,分为以下几步:反编译解包,修改,重打包,修改签名等步骤。安卓apk修改准备工作1.系统配置好JavaJDK环境变量2.需要root权限的手机(针对系统自带apk,其他软件免root)3.Auto-Sign签名工具4.apktool工具安卓apk修改开始反编译本文拿Android系统里面的Settings.apk做demo,具体如何将apk获取出来在此就不过多介绍了,直接进入主题:按键win+R输入cmd,打开命令窗口,并将路
我一直在搜索net/http代码,但还没有找到解决方案。我需要执行一个多部分POST请求,我已经弄清楚了,但是在上传中定期注入(inject)一个回调真的很好,这样我就可以增加一个进度条。有谁知道一种方法可以让代码执行HTTPpost期间发送的每X个字节? 最佳答案 看起来您没有使用Rails,但我认为最简单的方法是从客户端进行。在浏览器设置中,您可以使用Flash(SWFUpload)或仅使用新的XMLHttpRequest内容向新浏览器提供进度条(上传在旧浏览器中仍然有效...只是没有进度条)。它的工作原理与您描述的略有不同,但
我希望能够在使用Ruby复制文件时显示文件复制操作的进度(当前使用FileUtils.cp)我已经尝试将verbose选项设置为是的,但这似乎只是向我展示了发出的复制命令。我现在正在从命令行运行这个脚本,所以理想情况下我希望能够像SCP在复制文件时那样呈现一些东西,但只要我能,我就不太在意呈现查看进度。 最佳答案 因为我没有足够的代表来编辑答案,所以这是我基于pisswillis答案的版本,我找到了progressbargem我也在我的例子中使用。我已经对此进行了测试,到目前为止它工作正常,但它可以做一些清理工作:require'r
我正在开发一个Sinatra应用程序,它包含一个上传表单,并带有一个进度条,指示上传完成了多少。该过程,如ryandahl所述,如下:HTTPuploadprogressbarsareratherobfuscated-theytypicallyinvolveaprocessrunningontheserverkeepingtrackofthesizeofthetempfilethattheHTTPserveriswritingto,thenontheclientsideanAJAXcallismadeeverycouplesecondstotheserverduringtheuploa
有谁知道在下载文件时从ruby的Net::FTP库获取状态更新的方法吗?我正在尝试实现一个Web界面,该界面显示从远程FTP服务器下载文件时剩余百分比的进度条。 最佳答案 供将来引用-我偶然发现了一个解决方案:filesize=ftp.size(filename)transferred=0p"Beginningdownload,filesize:#{filesize}"ftp.getbinaryfile(filename,"#{SOURCE_IMPORT_DIRECTORY}/#{filename}",1024){|data|t
快捷目录前言一、涉及到的相关技术简介二、具体实现过程及踩坑杂谈1.安卓手机改造成linux系统实现方案2.改造后的手机Linux中软件的安装3.手机Linux中安装MySQL5.7踩坑实录4.手机Linux中安装软件的正确方法三、Linux服务器部署前后端分离项目流程1.前提准备(安装必要软件,搭建环境):2.前后端分离项目的详细部署过程:总结前言总体概述:本篇文章隶属于“手机改造服务器部署前后端分离项目”系列专栏,该专栏将分多个板块,每个板块独立成篇来详细记录:手机(安卓)改造成个人服务器(Linux)、Linux中安装软件、配置开发环境、部署JAVA+VUE+MySQL5.7前后端分离项目
当您运行gitclone时,它会就地更新进度。例如,接收到位置变化的对象的百分比。user@athena:~/cloj/src$gitclonegit://git.boinkor.net/slime.gitInitializedemptyGitrepositoryin/home/user/cloj/src/slime/.git/remote:Countingobjects:15936,done.remote:Compressingobjects:100%(5500/5500),done.Receivingobjects:28%(4547/15936),3.16MiB|165KiB/s这
我在更新jquery进度条时遇到了一些问题。这个进度条在页面加载期间不在文档中,我只是在用户单击按钮时添加它,如下所示:$(this).parent().append('');$(this).parent().children('div.progressbar').show();$(this).parent().children('div.progressbar').progressbar({value:20});然后,使用超时,我正在尝试更新它functionupdateProgressBar(){$('.progressbar').each(function(){myNewValu
我目前正在开发一个文件转换程序,文件上传后,它会将文件转换为不同的文件格式(ppt、pdf),这通常需要很长时间,具体取决于文件大小。由于文件转换发生在后端,我希望用户看到文件转换的进度(类似于进度条,例如“正在转换52%的文件”),无论如何我可以向用户显示当前的进度文件转换(发生在后端)?在文件转换期间,我只能显示状态(以数字表示(由我正在使用的API提供))我不知道从哪里开始有人可以提供一些见解或方法吗? 最佳答案 如果您使用的是Struts2,请查看ExecuteandWaitInterceptor.它会为您的任务创建新线程,