热门标签 | HotTags
当前位置:  开发笔记 > Android > 正文

Android七种进度条的样式

在开发中我们经常要用到进度条显示下载或者加载的进度。系统自带的黄色进度条在UI效果上经常不能满足策划或者美工的要求。这就要我们屌丝程序员自己自定义进度条,下面小编给大家介绍Android七种进度条的样式,需要的朋友可以参考下

当一个应用在后台执行时,前台界面就不会有什么信息,这时用户根本不知道程序是否在执行、执行进度如何、应用程序是否遇到错误终止等,这时需要使用进度条来提示用户后台程序执行的进度。Android系统提供了两大类进度条样式,长形进度条(progress-BarStyleHorizontal)
和圆形进度条(progressBarStyleLarge)。进度条用处很多,比如,应用程序装载资源和网络连接时,可以提示用户稍等,这一类进度条只是代表应用程序中某一部分的执行情况,而整个应用程序执行情况呢,则可以通过应用程序标题栏来显示一个进度条,这就需要先对窗口的显示风格进行设置"requestWindowFeature(Window.FEATURE_PROGRESS)"。

先看下面效果图:

例1:(默认样式(中等圆形))

Xml代码

 

例2:(超大圆形)

例1:(默认样式(中等圆形))

Xml代码

 

例2:(超大圆形)

Xml代码

 

例3:(小号圆形)

Xml代码

 

例4:(标题小号圆形)

Xml代码

 

例4-在标题中使用小号圆形的使用代码:

 

Java代码

@Override 

public void onCreate(Bundle savedInstanceState) { 
 super.onCreate(savedInstanceState); 
 //设置标题不确定性进度条风格 
 requestWindowFeature(Window.FEATURE_INDETERMINATE_PROGRESS); 
 setContentView(R.layout.progress_bars); 
 //显示标题不确定性进度条 
 setProgressBarIndeterminateVisibility(true); 
 //关闭标题不确定性进度条 
 //setProgressBarIndeterminateVisibility(false); 
} 

例5:(长方形进度条)

Xml代码

 
   android:max="100" 最大进度值100
   android:progress="50" 当前初始化进度值50
   android:secOndaryProgress="70" 当前初始化第2进度值70

例5-在标题中使用长方形进度条的代码:

 

Java代码

@Override 
public void onCreate(Bundle savedInstanceState) { 
 super.onCreate(savedInstanceState); 
 //设置标题进度条风格 
 requestWindowFeature(Window.FEATURE_PROGRESS); 
 setContentView(R.layout.progress_bars); 
 //显示标题进度 
 setProgressBarVisibility(true); 
 //设置标题当前进度值为5000(标题进度最大值默认为10000) 
 setProgress(5000); 
 //关闭标题进度 
 //setProgressBarVisibility(false); 
} 

例6:(进度对话框-圆形进度条)

 

Java代码

ProgressDialog dialog = new ProgressDialog(this); 
//设置进度条风格,风格为圆形,旋转的 
dialog.setProgressStyle(ProgressDialog.STYLE_SPINNER); 
//设置ProgressDialog 标题 
dialog.setTitle("进度对话框"); 
//设置ProgressDialog 提示信息 
dialog.setMessage("圆形进度条"); 
//设置ProgressDialog 标题图标 
dialog.setIcon(android.R.drawable.ic_dialog_map); 
//设置ProgressDialog 的一个Button 
dialog.setButton("确定", new ProgressDialog.OnClickListener(){ 
 @Override 
 public void onClick(DialogInterface dialog, int which) { 
 } 
}); 
//设置ProgressDialog 的进度条是否不明确 
dialog.setIndeterminate(false); 
//设置ProgressDialog 是否可以按退回按键取消 
dialog.setCancelable(true); 
//显示 
dialog.show(); 

例7:(进度对话框-长方形进度条)

 

Java代码

ProgressDialog dialog = new ProgressDialog(this); 
//设置进度条风格,风格为圆形,旋转的 
dialog.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL); 
//设置ProgressDialog 标题 
dialog.setTitle("进度对话框"); 
//设置ProgressDialog 提示信息 
dialog.setMessage("长方形进度条"); 
//设置ProgressDialog 标题图标 
dialog.setIcon(android.R.drawable.ic_dialog_alert); 
//设置ProgressDialog的最大进度 
dialog.setMax(100); 
//设置ProgressDialog 的一个Button 
dialog.setButton("确定", new ProgressDialog.OnClickListener(){ 
 @Override 
 public void onClick(DialogInterface dialog, int which) { 
 } 
}); 
//设置ProgressDialog 是否可以按退回按键取消 
dialog.setCancelable(true); 
//显示 
dialog.show(); 
//设置ProgressDialog的当前进度 
dialog.setProgress(50); 

通过本篇文章介绍了Android 七种进度条的样式,希望大家喜欢。


推荐阅读
  • Android 九宫格布局详解及实现:人人网应用示例
    本文深入探讨了人人网Android应用中独特的九宫格布局设计,解析其背后的GridView实现原理,并提供详细的代码示例。这种布局方式不仅美观大方,而且在现代Android应用中较为少见,值得开发者借鉴。 ... [详细]
  • 优化ListView性能
    本文深入探讨了如何通过多种技术手段优化ListView的性能,包括视图复用、ViewHolder模式、分批加载数据、图片优化及内存管理等。这些方法能够显著提升应用的响应速度和用户体验。 ... [详细]
  • Android LED 数字字体的应用与实现
    本文介绍了一种适用于 Android 应用的 LED 数字字体(digital font),并详细描述了其在 UI 设计中的应用场景及其实现方法。这种字体常用于视频、广告倒计时等场景,能够增强视觉效果。 ... [详细]
  • RecyclerView初步学习(一)
    RecyclerView初步学习(一)ReCyclerView提供了一种插件式的编程模式,除了提供ViewHolder缓存模式,还可以自定义动画,分割符,布局样式,相比于传统的ListVi ... [详细]
  • 解决JAX-WS动态客户端工厂弃用问题并迁移到XFire
    在处理Java项目中的JAR包冲突时,我们遇到了JaxWsDynamicClientFactory被弃用的问题,并成功将其迁移到org.codehaus.xfire.client。本文详细介绍了这一过程及解决方案。 ... [详细]
  • 深入理解 Oracle 存储函数:计算员工年收入
    本文介绍如何使用 Oracle 存储函数查询特定员工的年收入。我们将详细解释存储函数的创建过程,并提供完整的代码示例。 ... [详细]
  • 本文总结了2018年的关键成就,包括职业变动、购车、考取驾照等重要事件,并分享了读书、工作、家庭和朋友方面的感悟。同时,展望2019年,制定了健康、软实力提升和技术学习的具体目标。 ... [详细]
  • CSS 布局:液态三栏混合宽度布局
    本文介绍了如何使用 CSS 实现液态的三栏布局,其中各栏具有不同的宽度设置。通过调整容器和内容区域的属性,可以实现灵活且响应式的网页设计。 ... [详细]
  • Python自动化处理:从Word文档提取内容并生成带水印的PDF
    本文介绍如何利用Python实现从特定网站下载Word文档,去除水印并添加自定义水印,最终将文档转换为PDF格式。该方法适用于批量处理和自动化需求。 ... [详细]
  • 将Web服务部署到Tomcat
    本文介绍了如何在JDeveloper 12c中创建一个Java项目,并将其打包为Web服务,然后部署到Tomcat服务器。内容涵盖从项目创建、编写Web服务代码、配置相关XML文件到最终的本地部署和验证。 ... [详细]
  • XNA 3.0 游戏编程:从 XML 文件加载数据
    本文介绍如何在 XNA 3.0 游戏项目中从 XML 文件加载数据。我们将探讨如何将 XML 数据序列化为二进制文件,并通过内容管道加载到游戏中。此外,还会涉及自定义类型读取器和写入器的实现。 ... [详细]
  • 本文介绍如何在 Unity 的 XML 配置文件中,将参数传递给自定义生命周期管理器的构造函数。我们将详细探讨 CustomLifetimeManager 类的实现及其配置方法。 ... [详细]
  • 本文详细介绍了 Java 中 org.apache.xmlbeans.SchemaType 类的 getBaseEnumType() 方法,提供了多个代码示例,并解释了其在不同场景下的使用方法。 ... [详细]
  • 本文详细介绍了如何解决MyBatis中常见的BindingException错误,提供了多种排查和修复方法,确保Mapper接口与XML文件的正确配置。 ... [详细]
  • 基于KVM的SRIOV直通配置及性能测试
    SRIOV介绍、VF直通配置,以及包转发率性能测试小慢哥的原创文章,欢迎转载目录?1.SRIOV介绍?2.环境说明?3.开启SRIOV?4.生成VF?5.VF ... [详细]
author-avatar
woodburger_821
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有