Android自定义进度条颜色
这个没法了只能看源码了,还好下载了源码, sources\base\core\res\res\ 下应有尽有,修改进度条颜色只能找progress ,因为是改变样式,首先找styles.xml
1
2
3
4
5
6
7
8
9
10
|
< style name = "Widget.ProgressBar" > < item name = "android:indeterminateOnly" >true</ item > < item name = "android:indeterminateDrawable" >@android:drawable/progress_medium_white</ item > < item name = "android:indeterminateBehavior" >repeat</ item > < item name = "android:indeterminateDuration" >3500</ item > < item name = "android:minWidth" >48dip</ item > < item name = "android:maxWidth" >48dip</ item > < item name = "android:minHeight" >48dip</ item > < item name = "android:maxHeight" >48dip</ item > </ style > |
进度条颜色,所以找到:
1
2
3
4
5
6
7
|
< style name = "Widget.ProgressBar.Horizontal" > < item name = "android:indeterminateOnly" >false</ item > < item name = "android:progressDrawable" >@android:drawable/progress_horizontal</ item > < item name = "android:indeterminateDrawable" >@android:drawable/progress_indeterminate_horizontal</ item > < item name = "android:minHeight" >20dip</ item > < item name = "android:maxHeight" >20dip</ item > </ style > |
Android:progressDrawable"> 所以我们可以找到"drawable下的 progress_horizontal 文件,改变他就可以改变进度条颜色。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
|
<? xml version = "1.0" encoding = "utf-8" ?> <!-- Copyright (C) 2008 The Android Open Source Project Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. --> < item android:id = "@android:id/background" > < shape > < corners android:radius = "5dip" /> < gradient android:angle = "270" android:centerColor = "#ff5a5d5a" android:centerY = "0.75" android:endColor = "#ff747674" android:startColor = "#ff9d9e9d" /> </ shape > </ item > < item android:id = "@android:id/secondaryProgress" > < clip > < shape > < corners android:radius = "5dip" /> < gradient android:angle = "270" android:centerColor = "#80ffb600" android:centerY = "0.75" android:endColor = "#a0ffcb00" android:startColor = "#80ffd300" /> </ shape > </ clip > </ item > < item android:id = "@android:id/progress" > < clip > < shape > < corners android:radius = "5dip" /> < gradient android:angle = "270" android:centerColor = "#ffffb600" android:centerY = "0.75" android:endColor = "#ffffcb00" android:startColor = "#ffffd300" /> </ shape > </ clip > </ item > </ layer-list > |
1
2
3
|
android:startColor="#80ffd300" android:centerColor="#80ffb600" android:endColor="#ff747674" |
在我们的项目下新建一个 style.xml 文件
1
2
3
4
5
6
7
|
< style name = "ProgressBar_Mini" parent = "@android:style/Widget.ProgressBar.Horizontal" > < item name = "android:maxHeight" >50dip</ item > < item name = "android:minHeight" >8dip</ item > < item name = "android:indeterminateOnly" >false</ item > < item name = "android:indeterminateDrawable" >@android:drawable/progress_indeterminate_horizontal</ item > < item name = "android:progressDrawable" >@drawable/progressbar_mini</ item > </ style > |
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
|
< item android:id = "@android:id/background" > < shape > < corners android:radius = "5dip" /> < gradient android:angle = "270" android:centerY = "0.75" android:endColor = "#F5F5F5" android:startColor = "#BEBEBE" /> </ shape > </ item > < item android:id = "@android:id/secondaryProgress" > < clip > < shape > < corners android:radius = "0dip" /> < gradient android:angle = "270" android:centerY = "0.75" android:endColor = "#165CBC" android:startColor = "#85B0E9" /> </ shape > </ clip > </ item > < item android:id = "@android:id/progress" > < clip > < shape > < corners android:radius = "5dip" /> < gradient android:angle = "270" android:centerY = "0.75" android:endColor = "#165CBC" android:startColor = "#85B0E9" /> </ shape > </ clip > </ item > </ layer-list > |
1
2
3
4
5
6
|
< ProgressBar android:id = "@+id/progress" style = "@style/ProgressBar_Mini" android:layout_width = "fill_parent" android:layout_height = "wrap_content" android:progress = "50" /> |
http://blog.csdn.net/roserose0002/article/details/7988779
作者: 一点点征服
出处:http://www.cnblogs.com/ldq2016/
本文版权归作者所有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文链接,否则保留追究法律责任的权利