位置: 编程技术 - 正文
推荐整理分享【Android】进度条与线程之间的消息处理(android进度条对话框),希望有所帮助,仅作参考,欢迎阅读内容。
文章相关热门搜索词:android进度条对话框,android进度条控件,progress进度管理安卓,progress进度管理安卓,android进度条控件,android进程状态,android进度条对话框,android进度条控件,内容如对您有帮助,希望把文章链接给更多的朋友!
有点没想到的是,这样的一个小小的程序弄了很久才做完。
这个程序看起来很简单的,如下图:
一个进度条在不断地增加,累加到超过%,隐藏载入进度条,并且文字改变成一个“倒数3秒”继续执行。
数完三秒之后则继续进行进度条的累加。
首先,由于标签文本是动态的,通过Java文件控制,在resvaluesstring.xml,仅仅需要把程序名称改成“进度条”,没有什么特别的:
之后,布局也没有什么特别的,思想如下图:
在reslayoutactivity_main.xml中,修改成如下代码即可:
其中,这里细长进度条ProgressBar2的style可能比较特别,但安卓是这样要求的没有办法,指定其最大为%。进度条1,看起来像是个不断旋转的载入图像,但其实也是进度条的一种,其没有最大,也不能通过Java文件设置其当前进度,在MainActivity.Java中只能设定其显示与否。
这里为各个组件设置ID,同时使用了嵌套线性布局。
关键是MainActivity.java这个文件弄了我好久,代码如下:
可能有人不解,为何不直接在定时器中设置文本,还要非常复杂的样子整个消息处理器Handle,又要处理器的泄露问题。
我最初也不像这样整的,全因为定时器是一条新的线程,安卓不允许在别的线程中设置标签文本TextView1的,如果你不是在Android进程中设置标签文本的,则会弹出一下的错误提示:
因此,必须利用安卓在线程中的消息传递,让处于安卓的Original Thread来设置标签文本的,对进度条进行处理。就这个东西搞了我很久。
同时,这里的定时器的设置使用了Java中的匿名内部类,具体见《【Java】定时器、线程与匿名内部类》(点击打开链接)。这里不赘述了。
最后随便说一句,这里的标签文本可以设置其TextSize="sp",默认的字体太小,不太好看。
Android中SoundPool的使用 大家知道MediaPlayer占用的资源比较多,且不可以同时支持播放多个音频,所以我们有一种叫做SoundPool,比如我们常见的按键音或者是手机提示音,还比如
Android中使用HttpURLConnection和HttpClient实现GET和POST请求访问网络 HttpURLConnection中的GETimportjava.io.BufferedReader;importjava.io.IOException;importjava.io.InputStreamReader;importjava.io.UnsupportedEncodingException;importjava.net.HttpURLConnection;importjava.
简单的android闹钟 对service和date,Calendar的使用一直不是很熟练,今天做了一个简单的闹钟来练习一下,主要思路如下1.设置日期(年月日),为了熟悉DatePickDialog的使用2.
标签: android进度条对话框
本文链接地址:https://www.jiuchutong.com/biancheng/386845.html 转载请保留说明!友情链接: 武汉网站建设