【问题标题】:Changing the progress bar color更改进度条颜色
【发布时间】:2016-05-14 17:06:11
【问题描述】:

我在我的 Activty 中使用了一个圆形 ProgressBar。 我的问题是它的颜色没有正确改变,只有 BG 颜色在改变。 那么如何在没有BG的情况下更改ProgressBar的颜色。 我试过这个线程-How to change default color of progress bar?

http://i.stack.imgur.com/DEpyM.jpg

【问题讨论】:

  • 发布一些代码。进度条的xml在哪里?
  • @Vucko 我使用了这个线程 stackoverflow.com/questions/6421178/how-to-change-default-color-of-progress-bar 中的代码

标签: android progress-bar


【解决方案1】:

您可以在 xml 文件中完成所有操作 经过一番搜索,我得到了答案:

你的进度条码:

   <ProgressBar
        android:id="@+id/progressBar"
        style="?android:attr/progressBarStyleLarge"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:max="100"
        android:indeterminateDrawable="@drawable/progress"
   />

进度绘图由一个旋转环组成,具有您选择的渐变颜色,如下所示:

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

        android:thicknessRatio="8" android:useLevel="false">

        <size android:width="76dip" android:height="76dip" />
        <gradient android:type="sweep" android:useLevel="false"
            android:startColor="#007700" 
            android:endColor="#115511"
            android:angle="0"
             />
    </shape>
</rotate> 

就这样,请评价这个答案:)

【讨论】:

  • 我需要@drawable/anyfile中应该存在的颜色更改代码
  • 顺便说一下,这里表示的drawable是一个9patch图像,由你希望的一种颜色组成,有一个带有sdk的9patch创建工具你可以使用它。
  • 目前我使用 AIDE :P
  • 我也是菜鸟...所以我很难理解所有内容
  • 那么你的问题到底是什么?你不明白哪一部分?
【解决方案2】:

更好的方法(使用 AppCompat 库):

final int color = Color.WHITE; // Or any other one
final ProgressBar progressBar= (ProgressBar) findViewById(R.id.progress_bar);
        DrawableCompat.setTint(progressBar.getIndeterminateDrawable(), color);

【讨论】:

    猜你喜欢
    • 2016-11-02
    • 2014-03-27
    • 2014-10-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-08-19
    相关资源
    最近更新 更多