首先我们看下framework下关于进度条的style定义,如下

    <style name="Widget.ProgressBar">
<item name="android:indeterminateOnly">true</item>
<item name="android:indeterminateDrawable">@android:drawable/progress_medium_white</item>
<item name="android:indeterminateBehavior">repeat</item>
<item name="android:indeterminateDuration">3500</item>
<item name="android:minWidth">48dip</item>
<item name="android:maxWidth">48dip</item>
<item name="android:minHeight">48dip</item>
<item name="android:maxHeight">48dip</item>
<item name="android:mirrorForRtl">false</item>

对于上面属性,意义如下

属性名
描述
android:animationResolution
超时的动画帧之间的毫秒 ;必须是一个整数值,如“100”。
android:indeterminate
是否允许使用不确定模式,在不确定模式下,进度条动画无限循环
android:indeterminateBehavior
定义当进度达到最大时,不确定模式的表现;
该值必须为repeat或者cycle,repeat表示进度从0重新开始;cycle表示进度保持当前值,并且回到0
android:indeterminateDrawable
定义不确定模式是否可拉
android:indeterminateDuration
时间不定的动画
android:indeterminateOnly
限制为不定模式
android:interpolator
 
android:max
定义进度的最大值
android:maxHeight
进度Widget最大高
android:miniHeight
进度Widget最小高
android:maxWidth
进度Widget最大宽
android:minWidth
进度Widget最小宽
android:mirrorForRtl
定义了相关画板如果需要反映在RTL模式
android:progress
设置进度的默认值,值介于0到max之间
android:progressDrawable
 
android:secondaryProgress
定义二级进度值,值介于0到max。该进度在主进度和背景之间。比如用于网络播放视频时,二级进度用于表示缓冲进度,主进度用于表示播放进度。

我们看一下maxHeight属性跟progressBar中layout_height有什么区别

代码如下

   <ProgressBar android:id="@+id/stateProgressBar"
android:orientation="horizontal"
android:layout_width="match_parent"
android:layout_height="200dp"
android:max="100"
android:progress="10"
android:background="#00ffff"
android:secondaryProgress="50"
android:layout_marginTop="4dip"
style="@style/play_ProgressBar"/>

style的代码如下

    <style name="play_ProgressBar" parent="@android:style/Widget.Holo.Light.ProgressBar.Horizontal">
<item name="android:progressDrawable">@drawable/progress_horizontal_holo_dark</item>
<item name="android:minHeight">50dp</item>
<item name="android:maxHeight">50dp</item>
<!-- item name="android:indeterminateDrawable">@drawable/progress_indeterminate_horizontal_holo</item -->
</style>

运行结果

我们可以看到,layout_height发生作用,而且,进度条是充满整个progressbar的

当max比progressba大的时候

   <ProgressBar android:id="@+id/stateProgressBar"
android:orientation="horizontal"
android:layout_width="match_parent"
android:layout_height="50dp"
android:max="100"
android:progress="10"
android:background="#00ffff"
android:secondaryProgress="50"
android:layout_marginTop="4dip"
style="@style/play_ProgressBar"/>

style

    <style name="play_ProgressBar" parent="@android:style/Widget.Holo.Light.ProgressBar.Horizontal">
<item name="android:progressDrawable">@drawable/progress_horizontal_holo_dark</item>
<item name="android:minHeight">200dp</item>
<item name="android:maxHeight">200dp</item>
<!-- item name="android:indeterminateDrawable">@drawable/progress_indeterminate_horizontal_holo</item -->
</style>

运行结果

再次证明了,上面的说法的正确性

ProgressBar-style属性分析的更多相关文章

  1. javascript原生style属性分析

    1 <!DOCTYPE html> 2 <html> 3 <head lang="en"> 4 <meta charset="U ...

  2. dede文章调用时过滤调 body里面的style属性和值

    dede 发布文章的时候会在里面的标签中添加一些style 属性,现在改网站想去掉这些属性和里面的值,因为文章太多所以就用下面的方法 \include\arc.listview.class.php 在 ...

  3. css字体样式(Font Style),属性

    css字体样式(Font Style),属性   css字体样式(Font Style)是网页中不可或缺的样式属性之一,有了字体样式,我们的网页才能变得更加美观,因此字体样式属性也就成为了每一位设计者 ...

  4. JS中style属性

    解决办法:1.先定义一个CSS规则,然后this.className=''2.document.getElementByIdx_x("a").style.cssText=" ...

  5. Inspector a ProgressBar(定制属性面板)

    一.定制进度条 这篇文章主要学习如何在Unity的Inspector中使用ProgressBar 普通属性面板预览 通常我们的属性面板如下 定制属性面板预览 而通过扩展成ProcessBar后 二.内 ...

  6. CSS和JavaScript标签style属性对照表

    CSS和JavaScript标签style属性对照表一般情况是把"-"去掉,后面字母用大写. CSS语法 (不区分大小写) JavaScript语法 (区分大小写) border ...

  7. 【jQuery】总结:筛选器、控制隐藏、操作元素style属性

    筛选器 -> http://blog.csdn.net/lijinwei112/article/details/6938134 常用到的: $("tr[id=ac_"+id+ ...

  8. HTML的style属性

    HTML的style属性 HTML的style属性提供了一种改变HTML样式的通用方法.style是在HTML4版本中引用的,它是一种首选的改变HTML元素样式的方法.可以使用style直接的将样式添 ...

  9. 解决Struts2.2.20版本的标签不支持style属性的问题

    我先把Exception错误信息贴出来:org.apache.jasper.JasperException: /WEB-INF/jsp/topicAction/addUI.jsp (line: 40, ...

  10. JavaScript之Style属性学习

    当CSS使用伪类开始侵入DOM和JavaSCript所控制着的行为层时,DOM和JavaScript也使用他们的一系列样式去控制表现层,这篇随笔主要说的就是利用JavaScript去控制元素的表现形式 ...

随机推荐

  1. 动态代理(jdk--cglib)

    JAVA的动态代理 代理模式 代理模式是常用的java设计模式,他的特征是代理类与委托类有同样的接口,代理类主要负责为委托类预处理消息.过滤消息.把消息转发给委托类,以及事后处理消息等.代理类与委托类 ...

  2. c# 读取 excel文件内容,写入txt文档

    1 winform 读取excel文档 1)点击button按钮,弹出上传excel窗口 private void button_headcompany_Click(object sender, Ev ...

  3. Java 实现有序链表

    有序链表: 按关键值排序. 删除链头时,就删除最小(/最大)的值,插入时,搜索插入的位置. 插入时须要比較O(N),平均O(N/2),删除最小(/最大)的在链头的数据时效率为O(1), 假设一个应用须 ...

  4. IOCP模型总结(总结回想)

    IOCP旧代码重提.近期一直在玩其它方面的东东.时不时回想一下,收益多多. IOCP(I/O Completion Port,I/O完毕port)是性能最好的一种I/O模型.它是应用程序使用线程池处理 ...

  5. Codeforces Beta Round #2 C. Commentator problem

    模拟退火果然是一个非常高端的东西,思路神马的全然搞不懂啊~ 题目大意: 给出三个圆,求一点到这三个圆的两切线的夹角相等. 解题思路: 对于这个题来说还是有多种思路的 .只是都搞不明确~~   /害羞脸 ...

  6. 74.QT窗口实现类的封装

    #include "mainwindow.h" #include <QApplication> #include <windows.h> //定义一个窗口类 ...

  7. ASP.NET WebAPI RC 竟然不支持最常用的json传参

    壮士断腕(WCF Web API),为的是 ASP.NET Web API 的横空出世,再加上它的开放(开源),于是对之产生了一点点痴情,并写下了HttpClient + ASP.NET Web AP ...

  8. javafx DragDropped file

    public class EffectTest extends Application { @Override public void start(Stage primaryStage) { Grou ...

  9. RPC简易学习

    0.RPC简介 RPC,   英文全称:Remote Process Call.   中文全称:远程过程调用. 客户端通过网络请求调用远程服务端对外暴露服务.常用的两种RPC协议:TCP.HTTP. ...

  10. buffer--cache 详解