- 浏览: 340819 次
- 性别:
- 来自: 安徽
文章分类
最新评论
-
secally:
楼主可以上传个例子吗,谢谢,我咋跑不起来,,eclipse不是 ...
Android自动打包、签名、优化、上传ANT脚本 -
secally:
请问下执行命令是啥,ant release 还是?麻烦指教谢谢 ...
Android自动打包、签名、优化、上传ANT脚本 -
trp1022:
好牛啊
程序员不能不通文史 -
sunny78117:
谢谢,写得好
Android bitmap优化 -
futurebp:
这是什么类型的脚本啊?
Android自动打包、签名、优化、上传ANT脚本
以下内容Sinfrancis版权所有,专注请注明来自 http://mdev.cc/dev
有很多朋友使用Thread进行Progress的进度控制,这里我们使用Timer和TimerTask控制ProgressBar。
实现效果: 在进度75%之前,每秒钟有5%的进度,在75%之后每秒有1%的进度。
需要的知识: 1、ProgressBar 2、Thread 3、Timer和TimerTask
Activity代码:
package cc.androidos.pb; import java.util.Timer; import java.util.TimerTask; import android.app.Activity; import android.os.Bundle; import android.os.Handler; import android.view.View; import android.widget.ProgressBar; /** * <p> * Progress Bar test * </p> * @author SinFrancis Wong * @version 1.0 * @since 2009-3-10 */ public class ProgressBarTest extends Activity { /** Called when the activity is first created. */ private ProgressBar mProgress = null; /**Static for control the progress*/ public static int mProgressStatus = 0; /**Handler for post message into OS and change UI */ private Handler mHandler = new Handler(); @Override public void onCreate( Bundle savedInstanceState ) { super.onCreate( savedInstanceState ); //set the View setContentView( R.layout.main ); mProgress = ( ProgressBar ) findViewById( R.id.ProgressBar01 ); //Progress Bar Click ! mProgress.setOnClickListener( new View.OnClickListener() { @Override public void onClick( View arg0 ) { ProgressBarTest.mProgressStatus = 0; // a new Timer Timer tt = new Timer(); //Schedule the TimerTash , delay is 0 ms, every 1000ms execute the action tt.schedule( new ReTimerTask(), 0, 1 * 1000 ); //Scout the progress scoutProgress.start(); } } ); } /** * Scout the progress */ Thread scoutProgress = new Thread( new Runnable() { public void run() { while ( mProgressStatus < 100 ) { // Update the progress bar mHandler.post( new Runnable() { public void run() { mProgress.setProgress( mProgressStatus ); } } ); } } } ); } /** * A new TimerTask * @author SinFrancis Wong * @version 1.0 * @since 2009-3-10 */ class ReTimerTask extends TimerTask { @Override public void run() { //以下是监测进度到什么位置,如果在75范围内就对进度+5,如果在75----100之间就对进度+1,否则取消此任务 if( ProgressBarTest.mProgressStatus < 75 ) { ProgressBarTest.mProgressStatus += 5; System.err.println( "<75......." + ProgressBarTest.mProgressStatus ); } else if( ProgressBarTest.mProgressStatus < 100 && ProgressBarTest.mProgressStatus >= 75 ) { ProgressBarTest.mProgressStatus += 1; System.err.println( ">75 || <100......." + ProgressBarTest.mProgressStatus ); } else if( ProgressBarTest.mProgressStatus >= 100 ) { System.err .println( ">100......." + ProgressBarTest.mProgressStatus ); cancel(); } } }
布局文件代码:
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent"> <TextView android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="@string/hello" /> <ProgressBar android:id="@+id/ProgressBar01" android:layout_width="100px" android:layout_height="20px" android:max="100" android:progress="0" style="?android:attr/progressBarStyleHorizontal" //style设置是为了使得ProgressBar变成进度条而不是圆圈 > </ProgressBar> </LinearLayout>
使用线程也可以处理进度,但也需要借助Handler投递改变UI的消息到操作系统中,从而改版ProgressBar。
发表评论
-
抓取Android WebView截屏
2011-08-19 21:33 7662一般使用setDrawingCacheEnabled(true ... -
Android bitmap优化
2011-08-11 17:02 5985直接使用ImageView显示 ... -
Android模拟器更改分辨率后 无法取得分辨率问题
2011-05-11 21:06 2858在PC上更改模拟器分辨率为480*800 (如果你的PC界面 ... -
获取屏幕硬件分辨率方法 收藏
2011-05-11 16:28 1917TextView tv=(TextVie ... -
Bytecode for the Dalvik VM
2011-05-10 22:35 1366http://www.netmite.com/android/ ... -
Android DEX反编译后部分代码解析
2011-05-10 22:07 3944一个private 方法 private Stri ... -
反编译并且修改Android APK包
2011-05-10 16:57 3132為了某個實驗的動機,我們評估反編譯 Android ... -
Android Ant编译时候进行混淆
2010-10-18 13:49 3831版权所有,欢迎转载,转载请注明 : SinFrancis h ... -
自定义Ant Task
2010-09-13 17:58 2997版权所有,欢迎转载,转载请注明 : SinFrancis h ... -
Android自动打包、签名、优化、上传ANT脚本
2010-07-26 16:51 13988版权所有,欢迎转载,转载请注明 : SinFrancis h ... -
Android自定义含有CheckBox的Adapter遇到的问题
2010-06-23 13:48 4126版权所有,欢迎转载,转载请注明 : SinFrancis h ... -
QR code类库
2010-06-03 23:11 2332Google code发现的好东西。 QR code 类库 ... -
Android QQ,一个WEBOS APP诞生!!(两个QQ对比!)
2010-04-10 12:05 1879请看这个大哥的言论 http://linuxtoy.or ... -
Android 、BlackBerry 文本对齐方式对比
2010-02-22 13:11 1811版权所有,欢迎转载,转载请注明 : SinFrancis h ... -
教你如何开关Android的APN网络
2010-01-08 11:36 6053版权所有,转载请注明来自Mobile Developer (h ... -
史上最强NDK入门项目实战
2009-10-10 13:29 2690以下内容Sinfrancis版权所有,专注请注明来自 htt ... -
自定义List布局
2009-10-10 13:19 1920以下内容Sinfrancis版权所有,专注请注明来自 htt ... -
重画Progressbar的进度
2009-10-10 13:15 1942以下内容Sinfrancis版权所有,专注请注明来自 htt ... -
谈谈Android中文短信的实现
2009-10-10 13:13 2182似 乎Google在推出G1时 ... -
模拟器互发短信
2009-10-10 13:11 1293以下内容Sinfrancis版权所有,专注请注明来自 htt ...
相关推荐
在Java中,我们可以使用`java.util.Timer`和`java.util.TimerTask`类来实现定时任务。`Timer`用于计划在特定时间执行的任务,而`TimerTask`是实现了Runnable接口的类,代表了一个可由`Timer`调度的任务。通过`Timer....
在这个例子中,我们看到使用了`Timer`和`TimerTask`来模拟进度更新,这并不是常规做法,但在教学示例中可以理解。 在Java代码中,我们可以创建一个`Handler`对象,通过发送消息来更新进度条的进度。例如,可以创建...
对于“简单的Timer计时器的运用”,在Android中,我们可以使用`java.util.Timer`和`java.util.TimerTask`来实现定时执行的任务。例如,你可能希望在数据加载期间每秒更新一次对话框的文本,以显示剩余的加载时间。...
【使用Timer实现网页匀速加载的进度条样式】 在网页加载过程中,为了提供更好的用户体验,尤其是在网络速度较慢时,通常会使用进度条来显示网页加载的状态。本篇将介绍如何利用Java的Timer类来创建一个匀速加载的...
工作空间便于管理和版本控制,使用IDE(如Android Studio)进行开发时,会将项目结构和源代码保存在此目录下。 这些案例代码对于初学者来说,是理解Android开发的宝贵资源。通过学习和实践,开发者能够掌握Android...
使用定时器(TimerTask)定期更新UI。 以上就是实现Android APK文件下载并自动安装,以及显示下载进度、速度和花费时间的核心步骤。通过合理的设计和编程,你可以构建一个功能完善的下载管理系统,提升用户体验。
- 使用`Toast`显示简短的提示信息,`ProgressBar`显示游戏进度,`SeekBar`可能用于调整某些参数(比如难度或时间)。 综上所述,这个Java程序是一个Android平台上的答题游戏应用,包含UI设计、数据库操作、游戏...
Timer与TimerTask的使用方式 - **使用方式**: - 创建Timer实例。 - 创建TimerTask子类并重写`run()`方法。 - 调用Timer的`schedule()`方法安排任务执行。 #### 15. scheduleAtFixedRate与schedule的区别 - *...
总之,Android仿微信拍摄短视频主要涉及`MediaRecorder`、`Camera`、`SurfaceView`和`ProgressBar`的使用,通过自定义视图控件`MovieRecorderView`实现录制、显示进度和控制录制时间。这个功能的实现不仅需要对...
`TimerTask`每300毫秒执行一次,更新`TextView`的文字。`Handler`负责在主线程中更新UI,通过切换`count`的值来改变文字状态:“加载中.”、“加载中..”、“加载中...”。当`count`超过3时,将其重置为1,确保点的...
在这个案例中,可能使用了java.util.Timer和TimerTask来实现定时更新进度条的功能。定时器可以设定在特定间隔执行任务,非常适合用于监控并更新进度条的状态,比如每过一定时间增加一定的进度值。 自定义View是...
在这种情况下,使用带有进度条的系统通知栏消息是一种很好的解决方案。本文将详细介绍如何在Android项目中实现这样一个功能。 首先,我们需要创建一个通知栏消息的布局文件,例如`content_view.xml`。这个布局文件...
应用启动页自定义跳转计时器View Demo: CircleTextProgressbar.java: ... import android.content.Context; import android.content.res.ColorStateList;...import android.content.res.TypedArray;...