`

ProgressBar实现下载提示功能

阅读更多

在main.xml文件里面实现一个ProgressBar组件,把style设为水平horizontal (progressBar有两种显示方式),

同时记得水平铺满更加美观。

 <?xml version="1.0" encoding="utf-8"?>

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"

    android:layout_width="fill_parent"

    android:layout_height="fill_parent"

    android:orientation="vertical" >

 

    <ProgressBar

        android:id="@+id/progressBar1"

        style="@android:style/Widget.ProgressBar.Horizontal"

        android:layout_width="fill_parent"

        android:layout_height="wrap_content" 

        android:max="100"

        />

   

</LinearLayout>

第二步:

在Activity里面实现每隔两秒钟后进度条就加一个

 

 a、定义成员变量

    ProgressBar progressBar;

    boolean flag=true;//如果满格了就结束睡眠

    Handler handler;

 b、初始化

    init(){

 

progressBar=(ProgressBar) findViewById(R.id.progressBar1);

   handler=new Handler();

 

}

 c、必须要用handler,存储消息队列

   handler。post(new Runnable(){

});

   完整的代码如下

 


 

 package com.lin;

import android.app.Activity;
import android.os.Bundle;
import android.os.Handler;
import android.view.ViewGroup;
import android.widget.ProgressBar;
import android.widget.TextView;

public class Day5ProgressBarActivity extends Activity {
    /** Called when the activity is first created. */
   ProgressBar progressBar;
   boolean flag=true;
   Handler handler;
	@Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
       init();
       new Thread(new Runnable(){

		@Override
		public void run() {
			// TODO Auto-generated method stub
			while(flag){
				try {
					Thread.sleep(2000);
				} catch (InterruptedException e) {
					// TODO Auto-generated catch block
					e.printStackTrace();
				}
				handler.post(new Runnable(){

					@Override
					public void run() {
						// TODO Auto-generated method stub
					if(progressBar.getProgress()==progressBar.getMax()){
						ViewGroup group=(ViewGroup)progressBar.getParent();
						if(group!=null){
							group.removeView(progressBar);
							TextView textView=new TextView(Day5ProgressBarActivity.this);
							textView.setText("sucess");
							group.addView(textView);
						}
						
						flag=false;
					}
						progressBar.incrementProgressBy(10);
                      }
					
				});
			}
		}
    	   
       }).start();
	}
	private void init() {
		// TODO Auto-generated method stub
		progressBar=(ProgressBar) findViewById(R.id.progressBar1);
	    handler=new Handler();
	}
}

 效果如下:

 

1

 2

 

3



 

 

  • 大小: 1.2 KB
  • 大小: 1.1 KB
  • 大小: 1.6 KB
分享到:
评论

相关推荐

    自定义版本更新ProgressBar下载

    "自定义版本更新ProgressBar下载"是一个实现更新过程可视化,使用户能够清晰了解软件下载进度的实用功能。这个功能通过使用自定义布局来展示下载包的相关信息,比如下载百分比、文件大小等,同时配以ProgressBar组件...

    Android 之 ProgressBar用法介绍

    总之,Android的ProgressBar组件提供了丰富的功能,无论是简单的进度显示还是复杂的自定义动画,都可以轻松实现。通过灵活运用,开发者可以为用户创造出更直观、更友好的界面体验。在实际开发中,根据项目需求,选择...

    android 自定义ProgressBar,实现了 进度文字跟随进度效果

    在Android开发中,ProgressBar是系统提供的一个...这在很多场景下都非常实用,比如下载进度提示、视频播放进度指示等。当然,你还可以进一步扩展功能,例如添加动画效果、支持多种颜色主题等,以满足更多复杂的需求。

    监听加载结果并且带ProgressBar的WebView

    本文将深入探讨如何实现一个“监听加载结果并且带ProgressBar的WebView”,并教你如何利用它来加载网页。 首先,让我们了解WebView的基本用法。WebView是Android SDK中的一个类,位于`android.webkit`包下,它提供...

    IndeterminateProgressBar

    这个控件在UI设计中至关重要,因为它能提高用户体验,尤其是在执行长时间操作时,如下载、安装或同步数据。通过使用`IndeterminateProgressBar`,开发者可以向用户传达系统正在工作的信息,而无需提供具体的时间或...

    ExtJs-progressbar.rar_ExtJs progressbar_progressbar extjs

    在给定的资源"ExtJs-progressbar.rar"中,包含了一个使用ExtJS实现的网页进度条实例。这个实例可以帮助开发者理解如何在Web页面上创建动态的、交互式的进度指示器。 首先,我们要了解在ExtJS中什么是ProgressBar。...

    android 下载progressbar

    在Android开发中,当涉及到文件下载时,我们经常需要实现一个功能,即用户可以直观地看到下载进度。这个过程通常会用到`ProgressBar`来显示进度,并利用`DownloadManager`来处理后台的下载任务,同时结合`...

    登录控制和进度条实例代码ProgressBar

    本实例代码“ProgressBar”专注于这两个功能的实现,旨在帮助开发者更好地理解和应用到自己的项目中。 首先,我们来详细了解一下登录控制。登录控制通常包括用户名输入框、密码输入框以及登录按钮等组件。它允许...

    android listview ProgressBar listview底部实现加载分页的效果

    这个demo是有listview实现的,里面又ProgressBar提示正在加载的效果,还有listview显示列表数据,当道最地下面的时候,向上滑动页面,会有加载更多的功能及效果,实现分页的另一种效果

    自定义带ProgressBar的Dialog

    Dialog是Android系统提供的一个轻量级窗口,它可以浮现在应用的主活动(Activity)之上,用于提示用户一些重要信息或进行简单的交互操作。在Android SDK中,我们通常通过`AlertDialog.Builder`或自定义布局来创建...

    C#下载提示,提供清晰源码

    本教程将深入探讨如何在C#应用程序中实现一个清晰、易理解的下载提示功能,并提供源码实例供参考。 首先,我们需要了解C#中的异步编程。在下载文件时,我们通常会使用异步操作,以避免阻塞UI线程,保持应用程序的...

    Android 自定义的圆形变化ProgressBar

    在Android开发中,自定义...同时,通过不断的实践和优化,我们可以为这个组件添加更多的功能,如动画效果、文字提示等,使其更加灵活和强大。在实际开发中,这样的自定义组件能够极大地提高应用的用户体验和视觉效果。

    Android ProgressBar 几乎全部的用法.zip源码资源下载

    这个压缩包资源提供了关于ProgressBar的多种使用方法,涵盖了其基本功能到高级特性的实现。让我们深入探讨一下ProgressBar在Android开发中的应用。 1. **基本类型**: ProgressBar分为三种主要类型:`Horizontal ...

    用程序画的progressbar

    分析和学习这个文件将有助于深入理解如何在实际项目中实现自定义进度条功能。 总的来说,`ProgressBar`是软件界面中不可或缺的一部分,通过程序化的方式绘制不仅可以满足个性化需求,也能增强用户体验。无论是弧形...

    C# Winform 简单实现Http下载

    在本文中,我们将深入探讨如何使用C# Winform来实现一个简单的HTTP文件下载功能,并且在下载过程中显示进度条。由于我们暂时不考虑断点续传功能,因此这个下载器将从头开始完整地下载文件。 首先,让我们了解C# ...

    jQuery progressBar - jQuery进度条插件.progressbar.1.2

    7. **AJAX集成**:结合jQuery的AJAX功能,可以实现实时从服务器获取数据并更新进度条,比如在文件上传过程中。 8. **兼容性**:确保插件在不同的浏览器和设备上表现一致,包括对老版本浏览器的支持。 9. **版本...

    文件下载带进度条的哦很实用

    在给定的标签“文件下载 进度条”中,我们可以推测这是一个与实现文件下载进度条功能相关的软件库或组件。"AntarDev.ProgressBar.1.0.0116"这个文件名很可能是一个特定版本的库或者框架,用于开发者集成到他们的应用...

    ProgressBar.js响应式和光滑的进度条包含动画的SVG路径

    1. **响应式设计**:ProgressBar.js 具有适应不同屏幕尺寸的能力,无论是在桌面端还是移动端,都能保持良好的视觉效果和功能表现。 2. **平滑动画**:通过SVG路径动画技术,ProgressBar.js 可以创建出流畅、平滑的...

    android studio项目实例ProgressBar应用设计

    2. 文件下载进度显示:如果项目涉及到文件下载,可能会有一个水平进度条实时更新下载进度。 3. 操作执行的等待提示:在进行耗时操作(如数据库查询、网络请求)时,使用进度条让用户知道应用程序正在处理。 4. ...

    c# 多种美丽的进度条 progressbar 多种特效 包你喜欢 源码

    如果资源包含了自定义的动画库,那么可能封装了一些高级的动画控制功能,如缓动函数(Ease Functions),可以实现更平滑的过渡效果。 10. **性能优化**: 对于大量使用动画的进度条,性能优化是关键。可能通过...

Global site tag (gtag.js) - Google Analytics