ProgressBar进度条的使用:
<?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"
style="?android:attr/progressBarStyleHorizontal" android:visibility="gone"
android:layout_width="fill_parent" android:layout_height="wrap_content"></ProgressBar>
<ProgressBar android:id="@+id/ProgressBar02"
android:visibility="gone" android:max="100" android:progress="50"
android:secondaryProgress="70" style="?android:attr/progressBarStyleLarge"
android:layout_width="wrap_content" android:layout_height="wrap_content"></ProgressBar>
<Button android:id="@+id/Button" android:text="start"
android:layout_width="wrap_content" android:layout_height="wrap_content"></Button>
</LinearLayout>
package com.Aina.Android;
import android.app.Activity;
import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
import android.view.View;
import android.view.Window;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.ProgressBar;
public class Test_ProgressBar extends Activity {
/** Called when the activity is first created. */
private ProgressBar pBar1, pBar2;
private Button btn;
protected static final int STOP = 0x108;
protected static final int NEXT = 0x109;
private int iCount = 0;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
this.requestWindowFeature(Window.FEATURE_PROGRESS);// 设置窗口属性
this.setProgressBarVisibility(true);// 显示
setContentView(R.layout.main);
pBar1 = (ProgressBar) this.findViewById(R.id.ProgressBar01);
pBar2 = (ProgressBar) this.findViewById(R.id.ProgressBar02);
btn = (Button) this.findViewById(R.id.Button);
pBar1.setIndeterminate(false);
pBar2.setIndeterminate(false);
btn.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
pBar1.setVisibility(View.VISIBLE);
pBar2.setVisibility(View.VISIBLE);// 设置为可见
pBar1.setMax(100);// 设置最大值
pBar1.setProgress(0);
pBar2.setProgress(0);// 设置当前值
new Thread(new Runnable(){
@Override
public void run() {
// TODO Auto-generated method stub
for(int i=0;i<10;i++){
try{
iCount = (i+1)*20;
Thread.sleep(1000);
if(i==4){
Message msg = new Message();
msg.what = STOP;
Test_ProgressBar.this.mHandler.sendMessage(msg);
break;
}else{
Message msg= new Message();
msg.what = NEXT;
Test_ProgressBar.this.mHandler.sendMessage(msg);
}
}catch(Exception ex){
ex.printStackTrace();
}
}
}
}){
}.start();
}
});
}
private Handler mHandler = new Handler() {
public void handleMessage(Message msg) {
switch(msg.what){
case STOP://到了最大值
pBar1.setVisibility(View.GONE);
pBar2.setVisibility(View.GONE);//设置进度条不可见
Thread.currentThread().interrupt();//中断当前线程.
break;
case NEXT:
if(!Thread.currentThread().isInterrupted()){//当前线程正在运行
pBar1.setProgress(iCount);
pBar2.setProgress(iCount);//设置当前值
Test_ProgressBar.this.setProgress(iCount*100);
Test_ProgressBar.this.setSecondaryProgress(iCount*100);
}
break;
}
super.handleMessage(msg);
}
};
}
分享到:
相关推荐
在Android开发中,ProgressBar是一个非常常见的组件,用于展示任务的进度或者表示正在执行的操作。本篇文章将深入探讨如何自定义ProgressBar以满足特定的设计需求,尤其是根据系统的风格进行定制,包括改变默认背景...
本资源"AndroidProgressBar_Android ProgressBar进度条的几乎全部的用法源码集.rar"提供了关于Android ProgressBar的多种实现方式和应用场景的源代码,非常适合开发者学习和参考。 首先,我们来详细探讨一下Android...
ProgressBar是Android系统中的一种UI组件,它用于显示进度或加载状态。这个组件在各种场景下都非常常见,如数据加载、文件上传下载等。本篇文章将深入探讨ProgressBar的使用方法,包括其基本用法、样式定制以及...
Loader框架提供了一种处理后台数据加载的方式,可以在LoaderManager中配合ProgressBar使用,自动管理进度条的显示和隐藏。 总结,Android ProgressBar提供了丰富的功能,能满足各种进度展示需求。无论是简单的进度...
综上所述,ProgressBar是Android应用中不可或缺的一部分,开发者可以通过各种方式定制和使用它,以满足不同场景的需求。通过深入学习和理解ProgressBar的源码,我们可以更好地控制和优化其在应用中的表现。提供的...
本教程将深入讲解如何在Android项目中简单使用ProgressBar。 首先,我们需要在布局XML文件中添加ProgressBar。在`res/layout`目录下的某个布局文件(例如activity_main.xml)中,我们可以插入一个水平的确定性...
总结起来,实现类似iOS菊花效果的Android ProgressBar,需要自定义View,绘制圆形路径,设置动画,并在布局中使用。通过精心设计和优化,我们可以创建出既美观又高效的加载动画,提高用户的使用体验。在实际开发中,...
在Android开发中,ProgressBar是用户界面(UI)设计中一个重要的元素,用于向用户展示某个操作的进度或者等待状态。通常,系统提供的ProgressBar样式有限,但开发者可以通过自定义来实现更多样化的效果,以满足不同...
在Android开发中,ProgressBar是用于显示进度或加载状态的一个组件,通常我们看到的都是水平方向的条形或圆形进度条。然而,有时候根据界面设计的需求,我们可能需要将ProgressBar设置为垂直布局,这就是"android ...
在Android开发中,ProgressBar是一个非常重要...通过学习和理解这个"android ProgressBar进度条等待demo",开发者不仅可以掌握基础的进度条使用,还能进一步探索自定义进度条的无限可能性,提升应用的交互性和美观性。
在本案例中,"android progressBar test"很可能是一个示例项目,用于展示如何在Android应用中使用和测试Progressbar的各种功能。 Progressbar在Android中有两种主要类型:LinearProgressBar和CircularProgressBar...
本篇文章将深入探讨Android中的ProgressBar及其两个主要子类SeekBar和RatingBar的使用方法。 首先,我们来了解ProgressBar的基本用法。ProgressBar分为两种模式:indeterminate(不确定)和determinate(确定)。在...
本篇文章将深入探讨如何在Android中使用ProgressBar以及自定义其样式。 首先,ProgressBar的基本用法是在XML布局文件中声明它。以下是一个简单的例子: ```xml <ProgressBar android:id="@+id/progressBar" ...
在Android中,我们可以使用自定义View来实现这样的组件。自定义View需要我们重写onDraw()方法,以便绘制我们想要的图形。 接下来,我们将使用两张图片进行叠加来创建这个圆形进度条。一张图片作为背景,另一张图片...
总结来说,“带动画的横向ProgressBar”是一种增强用户体验的UI设计,通过自定义ProgressBar和使用Android的动画框架,我们可以创建出各种独特的视觉效果。无论是从布局设计、代码实现还是性能优化的角度,理解和...
此为Android ProgressBar 简单进度条的实现及示例下载源码,基本思路是:将模拟任务分成大小为100个的数组,任务完成度--默认为0,状态完成度默认也为0,然后构造一个线程用于显示消息,然后定义dowork()函数,完成...
android:attr/progressBarStyleHorizontal"`表示我们使用的是水平进度条样式,`android:progressDrawable`属性指定了我们之前创建的自定义进度条XML资源。 然后,在Java或Kotlin代码中,我们可以像操作普通Progress...
例如,在XML布局文件中,你可以使用`<ProgressBar>`标签并设定相关属性,如`android:progress`(determinate模式下的进度值),`android:max`(最大值),以及`android:indeterminateDuration`(不确定模式的动画...
在Android开发中,ProgressBar是用户界面中非常常见的一种组件,用于显示进度或加载状态。有时候,为了提升用户体验和界面美观性,我们可能需要对默认的ProgressBar进行自定义,特别是添加动画效果。本教程将深入...