android:ProgressBar中的progressBarStyle属性是什么意思?

时间:2010-11-26 22:00:55

标签: android android-progressbar android-styles

我一直在查看ProgressBar类的文档,并找到了这些属性:

  • 机器人:progressBarStyle
  • 机器人:progressBarStyleHorizo​​ntal
  • 机器人:progressBarStyleLarge
  • 机器人:progressBarStyleSmall

我认为这四个参数应该是对某些风格的引用。所以问题是,这些是为了什么?进度条的样式通过android:style属性和对全局样式属性的引用设置。

文档没有说任何有用的信息,在网上搜索,一无所获。

3 个答案:

答案 0 :(得分:69)

您提到的四个属性可以应用于ProgressBar的样式,如下所示:

style="?android:attr/progressBarStyleHorizontal"

样式常量android:progressBarStyleHorizontal是典型的增量进度条:

alt text

虽然其他三个是相同循环进度条的不同大小:

style="?android:attr/progressBarStyleSmall"

alt text

style="?android:attr/progressBarStyle"

alt text

style="?android:attr/progressBarStyleLarge"

alt text

<强>更新

根据adamp的评论:

  

这些是主题的属性   指出你可以使用的主题风格   进度指标......它们不是ProgressBar本身的属性。

答案 1 :(得分:1)

令人困惑的是,通常情况下,您可以为小部件(例如按钮)定义默认样式,如下所示:

<item name="android:buttonStyle">@style/Widget.AppCompat.Button.Colored</item>

默认情况下,所有按钮都将应用此样式。

如果这样做,人们会认为progressBarStyle属性对ProgressBar会起到同样的作用:

<item name="android:progressBarStyle">@style/Widget.AppCompat.ProgressBar</item>

但是事实并非如此,因为progressBarStyle属于ActionBar样式。

答案 2 :(得分:0)

如果有人正在寻找完整的代码块

<ProgressBar
android:id="@+id/ProgressBar2"
style="?android:attr/progressBarStyleLarge"
android:layout_width="match_parent"
android:layout_height="wrap_content" />