1

我想覆盖progressBarStyle。我的应用程序中的默认主题是

<style name="AppBaseTheme" parent="android:Theme.Light.NoTitleBar">

但我只需要将一种进度条样式更改为

android:Theme.NoTitleBar

我已经尝试自定义样式:

<style name="DarkTheme" parent="android:Theme.NoTitleBar">
    <item name="android:progressBarStyle">@style/progressBarStyle</item>
</style>

但得到了

error: Error: No resource found that matches the given name (at 'android:progressBarStyle' with value '@style/progressBarStyle')

我必须使用默认的系统进度条

Theme.NoTitleBar
4

2 回答 2

1

在您的 res/drawable/green_progress.xml 中将此设置为可绘制对象

<?xml version="1.0" encoding="utf-8"?>
<rotate xmlns:android="http://schemas.android.com/apk/res/android"
    android:fromDegrees="0"
    android:pivotX="50%"
    android:pivotY="50%"
    android:toDegrees="360" >

    <shape
       android:innerRadiusRatio="5"
        android:shape="ring"
        android:thicknessRatio="15"
        android:useLevel="false" >
        <size
            android:height="48dip"
            android:width="48dip" />

        <gradient
            android:centerColor="#FFFFFF"
            android:centerY="0.50"
            android:endColor="@android:color/transparent"
            android:startColor="#4bd577"
            android:type="sweep"
            android:useLevel="false" />
    </shape>

</rotate>

和你的进度条

android:indeterminateDrawable"@drawable/green_progress"

或者对于非圆形Progressbar 使用这个:

<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:id="@android:id/background">
        <shape>
            <corners android:radius="0dip" />
            <gradient android:startColor="#004676" android:centerColor="#004676"
                android:centerY="0.75" android:endColor="#004676" android:angle="90" />
        </shape>
    </item>
    <item android:id="@android:id/progress">
        <clip>
            <shape>
                <corners android:radius="0dip" />
                <gradient android:startColor="#ee7407" android:endColor="#ee7407"
                    android:angle="90" />
            </shape>
        </clip>
    </item>
</layer-list>

为了您的进步:

 android:progressDrawable="@drawable/myprogrogress"
于 2013-10-04T13:11:34.897 回答
1

使用下面来改变你的风格:

<style name="IndeterminateProgress" parent="@android:style/Widget.ProgressBar">

<item name="android:indeterminateDrawable">@drawable/progress_small_holo</item>

</style>
于 2013-10-04T13:25:01.860 回答