android上传文件进度条
A. 如何实现在Android文件上传进度条
实现在android实现带进度条的上传效果效果如图: 用到以下两个类就可实现带进度条的文件上传: 1、CustomMultiPartEntity extends MultipartEntity, 2、HttpMultipartPost extends AsyncTask 代码如下: import java/UploadImage.php"); try{ = newCustomMultipartEntity( newProgressListener() { @Override public void transferred(longnum){ publishProgress((int) ((num / (float) totalSize) * 100)); } }); // We use FileBody to transfer an image multipartContent.addPart("uploaded_file", newFileBody( newFile(m_userSelectedImagePath))); totalSize= multipartContent.getContentLength(); // Send it httpPost.setEntity(multipartContent); HttpResponseresponse = httpClient.execute(httpPost, httpContext); String serverResponse = EntityUtils.toString(response.getEntity()); ResponseFactoryrp = newResponseFactory(serverResponse); return(TypeImage) rp.getData(); } catch(Exception e) { System.out.println(e); } returnnull; } @Override protectedvoidonProgressUpdate(Integer... progress){ pd.setProgress((int) (progress[0])); } @Override protectedvoidonPostExecute(TypeUploadImageui) { pd.dismiss(); } } 在 transferred()函数中调用publishProgress((int) ((num / (float) totalSize) * 100)); 在onProgressUpdate()实现上传进度的更新操作
B. android开发中videoview的自带的进度条如何隐藏
android自带的播放器的进度条是默认会自动隐藏的,不能设置的。除非你去改源代码。你可以下个其他的播放器,看看能不能设置为不自动隐藏。
C. android progressbar第二条进度条有什么用
可以记录单文件的进度啊
比如下载更新,第一条是总进度,第二条是里面某些小文件的进度
D. 文件上传时,进度条的设计原理是什么
以java为例:一般来说,上传也好,下载也好,都要用到JavaI/O。 而计算进度的原理,不就是已经传输的大小与总大小的比值嘛。 这样就简单了,就拿最基本的OutputStream来说,它的基本的写出方法为 void write(byte[] b) ,实际上写出的过程不就是通过InputStream循环读,然后OutputStream循环写嘛。 你只要事先通过File类取得文件的总大小,然后在读入或写出的循环里加一个简单的进度计算的步骤,每读取或写出一次,就将已传输大小增加b.length,求出比值,更新进度条。具体的计算间隔,可以根据循环次数或时间间隔来定。 编码上,估计要用到I/O流,File,Socket以及Thread。 因为你是使用fileupload插件,所以最好查看一下它的实现代码,已决定如何将进度功能加入其中。
E. Android开发怎么自定义绘制如下图中这种进度条急需!在线等!
一)变换前背景
先来看看progressbar的属性:
1. <ProgressBar
2. android:id="@+id/progressBar"
3. style="?android:attr/progressBarStyleHorizontal"
4. android:layout_width="match_parent"
5. android:layout_height="wrap_content"
6. android:layout_margin="5dip"
7. android:layout_toRightOf="@+id/progressBarV"
8. android:indeterminate="false"
9. android:padding="2dip"
10. android:progress="50" />
根据style="?android:attr/progressBarStyleHorizontal",我们找到源码中的style.xml
1. <style name="Widget.ProgressBar.Horizontal">
2. <item name="android:indeterminateOnly">false</item>
3. <item name="android:progressDrawable">@android:drawable/progress_horizontal</item>
4. <item name="android:indeterminateDrawable">@android:drawable/progress_indeterminate_horizontal</item>
5. <item name="android:minHeight">20dip</item>
6. <item name="android:maxHeight">20dip</item>
7. </style>
看到
<item name="android:progressDrawable">@android:drawable/progress_horizontal</item>
木有,继续发掘源码,找到drawable下面的progress_horizontal.xml,这就是我们今天的主角了:
1. <layer-list xmlns:android="http://schemas.android.com/apk/res/android">
2.
3. <item android:id="@android:id/background">
4. <shape>
5. <corners android:radius="5dip" />
6. <gradient
7. android:startColor="#ff9d9e9d"
8. android:centerColor="#ff5a5d5a"
9. android:centerY="0.75"
10. android:endColor="#ff747674"
11. android:angle="270"
12. />
13. </shape>
14. </item>
15.
16. <item android:id="@android:id/secondaryProgress">
17. <clip>
18. <shape>
19. <corners android:radius="5dip" />
20. <gradient
21. android:startColor="#80ffd300"
22. android:centerColor="#80ffb600"
23. android:centerY="0.75"
24. android:endColor="#a0ffcb00"
25. android:angle="270"
26. />
27. </shape>
28. </clip>
29. </item>
30.
31. <item android:id="@android:id/progress">
32. <clip>
33. <shape>
34. <corners android:radius="5dip" />
35. <gradient
36. android:startColor="#ffffd300"
37. android:centerColor="#ffffb600"
38. android:centerY="0.75"
39. android:endColor="#ffffcb00"
40. android:angle="270"
41. />
42. </shape>
43. </clip>
44. </item>
45.
46. </layer-list>
看到android:id="@android:id/progress"木有,看到android:id="@android:id/secondaryProgress"木有
把这个文件复制到自己工程下的drawable,就可以随心所欲的修改shape的属性,渐变,圆角等等
那么怎么放一个图片进去呢,ok,新建progress_horizontal1.xml:
1. <?xml version="1.0" encoding="utf-8"?>
2. <layer-list xmlns:android="http://schemas.android.com/apk/res/android">
3.
4. <item android:id="@android:id/progress" android:drawable="@drawable/progressbar" />
5.
6. </layer-list>
在android:drawable中指定你处理好的图片
然后回到布局中
1. <ProgressBar
2. android:id="@+id/progressBar1"
3. android:layout_width="match_parent"
4. android:layout_height="wrap_content"
5. android:layout_below="@+id/progressBar"
6. android:layout_margin="5dip"
7. android:layout_toRightOf="@+id/progressBarV"
8. android:background="@drawable/progress_bg"
9. android:indeterminate="false"
10. android:indeterminateOnly="false"
11. android:maxHeight="20dip"
12. android:minHeight="20dip"
13. android:padding="2dip"
14. android:progress="50"
15. android:progressDrawable="@drawable/progress_horizontal1" />
android:background="@drawable/progress_bg"指定背景
android:progressDrawable="@drawable/progress_horizontal1"前景使用上面的progress_horizontal1
要是还不行
你来我们群里说吧
这里是开发者互相学习交流的 有大神
让他们给你解释你的疑问 号 码look at my n a m e.....
F. 安卓开发进度条问题
出现球型的原因是你下面这两句话造成的 android:layout_width="200dp"
android:layout_height="wrap_content"你可以把长和宽的值设成一样大小,或都设成wrap_content,就是个园型的了
G. android布局文件里的ProgressBar长形进度条怎么自定义样式
在windows操作系统下Android studio按照如下步骤自动义ProgressBar长形进度条的样式。
1、首先创建一个android项目,打开其中的XML布局文件,如下图:
H. android app上传文件速度太慢怎么处理
一、释放XP自带保留20%的带宽,让你的网速更快! 1、运行组策略编辑器程序(gpedit.msc)。在“‘本地计算机’策略”中,逐级“计算机配置”→“管理模板”→“网络(互联网)”→“QoS数据包调度程序”分支。在屏幕右边会出现“QoS数据包调度程序”策略。接着单击右边子项目的“限制可保留带宽”。这时,左边会显示“限制可保留带宽”的清楚描述。从这里我们可了解到“限制可保留带宽”的有些基本情形。了解之后我们就可以对“限制可保留带宽”进行设置了。单击“限制可保留带宽”下“显示”旁边的“属性”(或选取子项目“限制可保留带宽”,再点击右键→“属性”也可),出现“限制可保留带宽”对话框,先点击“说明”,再进一步了解“限制可保留带宽”确定系统(System)可保留的连接带宽的百分比情形。 之后我们就可以对另外20%带宽进设置了。点击“设置”。“设置”为我们提供了三个选取(未配置、已启用、已禁用),选取“已启用”,接着再将带宽限制旁边的%设置为0%即可,之后按确定退出。 2、单击“开始”→“连接到”→“显示全部连接”。 选中你所建立的连接,用鼠标右键单击属性,在出现的连接属性中单击网络(互联网),在显示的网络(互联网)对话框中,检查“此连接用下列项目”中“QoS数据包调度程序”是不是已打了勾,没问题就按确定退出。 3、最后重新开启系统(System)便完成对另外20%的频宽利用了 二、清理 ①清空Internet临时文件夹 他人查看“Internet临时文件夹”下的图、Flash等文件便能大体知道你曾到过的网站。要清理它们,可依次单击IE菜单栏中的“工具”→“Internet选项”,打开(OPEN)“Internet选项”对话框,在“常规”标签中点击“删掉文件”按钮,在弹出的“删掉文件”窗口中勾选“删掉全部脱机内容”,最后点击“确定”。 三、关掉上网设备猫和路由,十多分钟后再开机 四、还有网络(互联网)网站问题
I. android 文件上传时 怎么算文件上传速度
计算的下载速度,举例说明一下吧。
例如每隔N秒就改变当前下载速度数字的,N秒前的下载进度百分比m%,
N秒后的下载进度百分比n%,当前下载问题的总大小Size【换算成多少kb】
(m%-n%)*Size/N就是 这段时间的下载或上传速度了。
注意:记得增加判断一些边界问题。
J. android中progressbar进度条有哪些
一、进度条的定义。
进度条即计算机在处理任务时,实时的,以图片形式显示处理任务的速度,完成度,剩余未完成任务量的大小,和可能需要处理时间,一般以长方形条状显示。
二、进度条的由来。
在数字运算机发明之前,就已经有了进度条的概念。1896 年,Karol Adamiecki(波兰人;经济学家,工程师和管理研究人员),发明了一种叫做harmonogram(波兰语,时间表)的图表;1903年,他的理论在俄罗斯技术界引起了轰动。他在波兰杂志《 Przegląd Techniczny 》发表了一些文章(1909)。 1931年,他发表了一篇更广为人知的文章《armonogram or harmonograf.》(波兰语,日程或时间表),描述他的图。Adamiecki只是在波兰和俄罗斯发表这些文章,较少被英语国家了解。
同一时间,亨利·甘特(Henry Gantt)提出类似的方法已在西方普及,他在1910年和1915年都发表过文章。算是以讹传讹吧,Adamiecki的图表就被叫做为甘特图。这个概念后来被用于计算领域。
三、进度条的应用。
以文件处理为例:
单个文件的进度处理方法:
使用CopyFileEx进行文件复制,这个函数专门提供了一个回调函数用来处理进度条,详细参见MSDN。
总体进度的处理方法:
如果一批文件,首先获得文件的数量count = 文件数量
设置进条的范围为0至count,每完成一个文件,就向前进一步。