How can I change the style of a ProgressBar to small?
I have some difficulties fin开发者_如何学Pythonding the correct way to specify that a progress bar should have the small indefinite style.
I would be glad if somebody could provide an example for me and others that do a quick search for this information.
The solution is to change the style to
<ProgressBar
android:layout_width="wrap_content"
android:layout_height="wrap_content"
style="?android:attr/progressBarStyleSmall" />
One more way to do it is
style="@android:style/Widget.ProgressBar.Small"
Ex_
<ProgressBar
android:id="@+id/progress_bar"
style="@android:style/Widget.ProgressBar.Small"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:padding="7dip"
arandroid:visibility="visible" />
Here is how to do it programmatically:
ProgressBar progress = new ProgressBar(ctx, null, android.R.attr.progressBarStyleSmall);
This may be of use:
style="?android:attr/android:progressBarStyleSmall"
You can change the size of progress bar easily by scaleX and scaleY property, like this:
<ProgressBar
android:id="@+id/progressBar"
android:scaleX="0.5"
android:scaleY="0.5"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
Here,
scaleX: To change the width, so 0.5 will reduce the width to the half of the actual width
scaleY: To change the height, so 0.5 will reduce the height to the half of actual height
<ProgressBar
android:id="@+id/progressBar1"
android:layout_width="wrap_content
style="?android:attr/progressBarStyleSmallTitle"
android:layout_height="wrap_content" />
<!--changing of color,small size spinner-->
<style name="progressColor" parent="@android:style/Widget.ProgressBar.Small">
<item name="colorControlActivated">@color/colorPrimary</item>
</style>
you can achieve color and small size spinner by using above style in spinner
<ProgressBar
android:layout_width="wrap_content"
android:layout_height="wrap_content"
style="@style/progressColor"
android:layout_gravity="center" />
According to the answer of @Rupesh Yadav, you can see a structure of the style @android:style/Widget.ProgressBar.Small
:
<style name="Widget.ProgressBar.Small">
<item name="indeterminateDrawable">@drawable/progress_small_white</item>
<item name="minWidth">16dip</item>
<item name="maxWidth">16dip</item>
<item name="minHeight">16dip</item>
<item name="maxHeight">16dip</item>
</style>
I can confirm that setting min and max sizes solves the problem. Setting width and height explicitly doesn't change the size of the ProgressBar. So you can make your own style.
精彩评论