【发布时间】:2020-11-09 19:18:03
【问题描述】:
我希望你没事。 我在这里有一个代码,我从这个站点获取它,用于从路径复制文件。 我想和它一起使用progressBar,我如何将progressBar 与计数器一起使用?
我使用了下面的代码,progressBar 没有任何进展! 这是代码:
progressbar1 = (ProgressBar) findViewById(R.id.progressbar1);
progressbar1.setMax((int)100);
java.io.File filein = new java.io.File("/storage/emulated/0/Alarms/test.zip");
java.io.File fileout = new java.io.File("/storage/emulated/0/testcopied.zip");
java.io.FileInputStream fin = null;
java.io.FileOutputStream fout = null;
long length = filein.length();
long counter = 0;
int r = 0;
byte[] b = new byte[1024];
try {
fin = new java.io.FileInputStream(filein);
fout = new java.io.FileOutputStream(fileout);
while( (r = fin.read(b)) != -1) {
counter += r;
int k = (int)counter;
progressbar1.setProgress((int)k);
System.out.println( 1.0 * counter / length );
fout.write(b, 0, r);
}
}
catch(Exception e){
System.out.println("foo");
}
【问题讨论】:
-
progressbar1.setProgress((int)k);嗯,你已经用计数器的值设置了进度条。那么到底是什么问题呢? -
进度条不启动! (没有进展)
-
嘿!能不能再发一下网站链接。我认为你没有正确链接它。但通常你会通过多线程将计算与渲染分开。
-
@Valentin 哪个网站兄弟?我刚刚从这里“stackoverflow”得到了没有progressBar的代码,然后我尝试将它与progressBar链接但没有成功我不知道错误在哪里
-
the progress Bar don't Start ! (there's no progress)我认为它会立即指示最大值。如果将最大值设置为 100,则复制 100 个字节后将达到最大值。我认为文件超过 100 个。