亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 系統 > Android > 正文

Android編程實現自定義進度條顏色的方法

2020-04-11 11:15:14
字體:
來源:轉載
供稿:網友

本文實例講述了Android編程實現自定義進度條顏色的方法。分享給大家供大家參考,具體如下:

android 自定義進度條顏色

先看圖

基于產品經理各種自定義需求,經過查閱了解,下面是自己對android自定義進度條的學習過程!

這個沒法了只能看源碼了,還好下載了源碼, sources/base/core/res/res/  下應有盡有,修改進度條顏色只能找progress ,因為是改變樣式,首先找styles.xml
找到xml后,進去找到

<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><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>

這是默認轉圈的效果style,但今天我們修改的是水平進度條顏色!
所以找到

<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><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>

你看系統一步一步關聯的,擴展性很性,低耦合,所以我們現在只要改變進度條是怎么樣畫出來的就行了 ,但是負責畫進度條的是
<item name="android:progressDrawable">  所以我們可以找到"drawable下的 progress_horizontal 文件,改變他就可以改變進度條顏色

<?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      http://www.apache.org/licenses/LICENSE-2.0    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. --> <layer-list xmlns:android="http://schemas.android.com/apk/res/android">   <item android:id="@android:id/background">     <shape>       <corners android:radius="5dip" />       <gradient           android:startColor="#ff9d9e9d"           android:centerColor="#ff5a5d5a"           android:centerY="0.75"           android:endColor="#ff747674"           android:angle="270"       />     </shape>   </item>   <item android:id="@android:id/secondaryProgress">     <clip>       <shape>         <corners android:radius="5dip" />         <gradient             android:startColor="#80ffd300"             android:centerColor="#80ffb600"             android:centerY="0.75"             android:endColor="#a0ffcb00"             android:angle="270"         />       </shape>     </clip>   </item>   <item android:id="@android:id/progress">     <clip>       <shape>         <corners android:radius="5dip" />         <gradient             android:startColor="#ffffd300"             android:centerColor="#ffffb600"             android:centerY="0.75"             android:endColor="#ffffcb00"             android:angle="270"         />       </shape>     </clip>   </item> </layer-list> 
<?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      http://www.apache.org/licenses/LICENSE-2.0    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. --> <layer-list xmlns:android="http://schemas.android.com/apk/res/android">   <item android:id="@android:id/background">     <shape>       <corners android:radius="5dip" />       <gradient           android:startColor="#ff9d9e9d"           android:centerColor="#ff5a5d5a"           android:centerY="0.75"           android:endColor="#ff747674"           android:angle="270"       />     </shape>   </item>   <item android:id="@android:id/secondaryProgress">     <clip>       <shape>         <corners android:radius="5dip" />         <gradient             android:startColor="#80ffd300"             android:centerColor="#80ffb600"             android:centerY="0.75"             android:endColor="#a0ffcb00"             android:angle="270"         />       </shape>     </clip>   </item>   <item android:id="@android:id/progress">     <clip>       <shape>         <corners android:radius="5dip" />         <gradient             android:startColor="#ffffd300"             android:centerColor="#ffffb600"             android:centerY="0.75"             android:endColor="#ffffcb00"             android:angle="270"         />       </shape>     </clip>   </item> </layer-list> 

看到沒有,這是系統的進度條畫出的布局條件

android:startColor="#80ffd300"android:centerColor="#80ffb600"android:endColor="#ff747674"

我們只要改變這個色值就能改變他的顏色,主要改變的是<item android:id="@android:id/progress">下的色值就行了
說了這么多,到底怎么做呢, 很簡單

1. 在我們的項目下新建一個 style.xml 文件

創建一個style 標簽,集成系統默認樣式,然后自定義一個新的progressDrawable  文件,隨后面在layout 中的progress 中引用這個文件就行

<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>

下面是我的  progressbar_mini  文件,改變了下android:endColor="#F5F5F5" android:startColor="#BEBEBE"  的色值

<layer-list xmlns:android="http://schemas.android.com/apk/res/android" >   <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><layer-list xmlns:android="http://schemas.android.com/apk/res/android" >   <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>

最后在中引用就可以了

<ProgressBar    android:id="@+id/progress"    style="@style/ProgressBar_Mini"    android:layout_width="fill_parent"    android:layout_height="wrap_content"    android:progress="50" />

希望本文所述對大家Android程序設計有所幫助。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
亚洲网站视频福利| 国产精品美女无圣光视频| 欧美激情一区二区三级高清视频| 精品久久久999| 亚洲免费视频一区二区| 国产日韩欧美影视| 欧美日韩免费在线| 国产日本欧美一区二区三区在线| 美女啪啪无遮挡免费久久网站| 国产在线一区二区三区| 国产日韩在线观看av| 青青久久av北条麻妃黑人| 国产自摸综合网| 亚洲第一区在线观看| 欧美中文字幕视频在线观看| 高清在线视频日韩欧美| 亚洲 日韩 国产第一| 日韩高清电影好看的电视剧电影| 欧美在线免费观看| www日韩中文字幕在线看| 91精品久久久久久久久青青| 亚洲成人黄色在线| 久久久久久久网站| 亚洲欧洲在线看| 色综合久久精品亚洲国产| 成人高清视频观看www| 国产一区二区三区在线视频| 欧美中文字幕精品| 欧美日本在线视频中文字字幕| 日韩在线视频一区| 国产精品网址在线| 国产精品福利在线| 国产极品精品在线观看| 91视频九色网站| 中文字幕亚洲无线码在线一区| 亚洲欧美国内爽妇网| 亚洲激情电影中文字幕| 日本在线精品视频| 中文字幕日韩精品在线观看| 在线不卡国产精品| 亚洲精品福利免费在线观看| 亚洲欧美日韩第一区| 这里只有精品视频| 亚洲国产精品久久久久秋霞蜜臀| 国产精品久久久久不卡| 国产又爽又黄的激情精品视频| 亚洲综合中文字幕在线| 91精品国产亚洲| 欧美一级片免费在线| 在线电影欧美日韩一区二区私密| 国产成人一区二区三区小说| 国产一区二区激情| 成人国产精品免费视频| 18一19gay欧美视频网站| 91在线视频免费| 久久久久久亚洲精品中文字幕| 国产精品久久久久aaaa九色| 欧美成人合集magnet| 国产精品你懂得| 欧美在线免费观看| 亚洲美女视频网| 久久精品中文字幕一区| 欧美日韩国产精品专区| 欧美激情a∨在线视频播放| 成人激情黄色网| 国产精品99免视看9| 日韩hd视频在线观看| 国产精品久久久久77777| 久久久精品在线观看| 91精品在线一区| 国产视频久久久| 国产不卡一区二区在线播放| 亚洲国内精品视频| 成人黄色中文字幕| 91精品综合久久久久久五月天| 庆余年2免费日韩剧观看大牛| 欧美电影在线观看网站| 中文字幕国产日韩| 国产精品观看在线亚洲人成网| 亚洲电影免费在线观看| 在线视频日本亚洲性| 欧美美女15p| 久久久999国产精品| 国产色综合天天综合网| 欧美极品少妇xxxxx| 久久人人爽亚洲精品天堂| 精品亚洲va在线va天堂资源站| 国产精品视频在线观看| 青青精品视频播放| 欧美国产视频一区二区| 欧美多人爱爱视频网站| 精品中文字幕在线观看| 国产精品福利观看| 亚洲黄色av女优在线观看| 麻豆成人在线看| 欧美日韩一区二区免费在线观看| 日韩av在线免费观看一区| 欧美日韩免费看| 欧洲亚洲免费在线| 97精品免费视频| 国产美女精品视频| 欧美资源在线观看| 在线观看日韩www视频免费| 日日噜噜噜夜夜爽亚洲精品| 国产精品大片wwwwww| 国产噜噜噜噜久久久久久久久| 九九热99久久久国产盗摄| 91精品久久久久久久久久| 九九热这里只有精品6| 国产精品久久久久久久美男| 九九精品视频在线| 亚洲激情久久久| 九九热精品视频国产| 欧美日韩亚洲精品一区二区三区| 久久伊人免费视频| 日韩一级黄色av| 911国产网站尤物在线观看| 国产成人在线亚洲欧美| 91亚洲国产成人久久精品网站| 中文字幕成人在线| 久久久免费精品| 久久99国产精品久久久久久久久| 亚洲午夜未删减在线观看| 国产成人精品免费久久久久| 高清亚洲成在人网站天堂| 亚洲一区二区日本| 日本国产欧美一区二区三区| 日韩欧美在线观看视频| 国产免费一区二区三区在线能观看| 国产精品久久久久久一区二区| 国产精品久久久久久久久久久久久| 日日摸夜夜添一区| 亚洲激情视频在线观看| 成人久久一区二区三区| 亚洲男人的天堂在线| 国产偷亚洲偷欧美偷精品| 97欧美精品一区二区三区| 日韩一区二区精品视频| 久久综合九色九九| 国产成人精品国内自产拍免费看| 亚洲欧洲国产精品| 一区二区av在线| 日韩欧美国产激情| 亚洲精品一区二三区不卡| 日韩中文第一页| 日韩中文视频免费在线观看| 欧美成人午夜视频| 国产+成+人+亚洲欧洲| 久久人人看视频| 热久久这里只有精品| 亚洲男人的天堂在线播放| 亚洲精品一区中文字幕乱码| 成人在线免费观看视视频| 久久伊人色综合| 日韩福利伦理影院免费| 欧美成aaa人片在线观看蜜臀| 91色视频在线观看| 欧美电影免费观看高清| 国内免费精品永久在线视频| 亚洲国产美女精品久久久久∴| 欧美日韩国产一区二区| 国产精品午夜视频| 热门国产精品亚洲第一区在线| 欧美激情日韩图片|