以编程方式更改图层列表中的GradientDrawable颜色

时间:2014-02-26 06:13:58

标签: java android layout drawable

所以,在阅读了很多关于此的问题后,我仍然被困在这里,这就是我想做的事情:

  1. 从Java更改形状的颜色(id =“myShape”)。
  2. 选择ClipDrawable,并调用setColorFilter(color)无济于事。
  3. Picking GradientDrawable也无济于事。
  4. 此进度条有3种颜色可供选择。 目前我已经制作了3个xmls,1个对应于每种颜色,我根据我的条件加载。 我已经提到了here,但他没有剪辑进度条,这就是我正在做的额外事情。 问题是,xml中的颜色值是动态的,我是从服务器获取的,所以这三个xmls没什么用,直到我可以改变java的颜色。 在级别列表中有一个可能的解决方案,但我不太热衷于朝这个方向前进,这将是很多返工

    <layer-list xmlns:android="http://schemas.android.com/apk/res/android" >
        <item android:id="@+id/progress_front">
            <clip android:clipOrientation="horizontal" >
                <shape android:shape="rectangle" android:id="myShape">
                    <corners
                      android:bottomLeftRadius="360dp"
                      android:topLeftRadius="360dp"
                      android:bottomRightRadius="360dp"                    
                      android:topRightRadius="360dp" />
                    **<solid android:color="@color/bigfoodie_text" />**
    
                </shape>
            </clip>
        </item>
    
    </layer-list>
    

    感谢任何帮助。

0 个答案:

没有答案