Android中怎么利用ProgressBar實現(xiàn)顏色漸變,針對這個問題,這篇文章詳細(xì)介紹了相對應(yīng)的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。
創(chuàng)新互聯(lián)是一家專注于網(wǎng)站制作、成都網(wǎng)站建設(shè)與策劃設(shè)計,宜陽網(wǎng)站建設(shè)哪家好?創(chuàng)新互聯(lián)做網(wǎng)站,專注于網(wǎng)站建設(shè)10多年,網(wǎng)設(shè)計領(lǐng)域的專業(yè)建站公司;建站業(yè)務(wù)涵蓋:宜陽等地區(qū)。宜陽做網(wǎng)站價格咨詢:135182197921 . 上面的樣式只是實現(xiàn)了顏色漸變,但它旋轉(zhuǎn)和呈現(xiàn)的方式仍然是一個圓形的ProgressBar。
2 . 這個ProgressBar實現(xiàn)了顏色漸變,我們就需要用到gradient,這個也比較簡單,只要我們配置開始,中間,結(jié)束顏色即可實現(xiàn)
明白了上面兩點(diǎn)我們就開始寫代碼。
首先,我們實現(xiàn)上面的布局,背景灰色,一個ProgressBar居中,一個TextView位于ProgressBar下方。
代碼如下:
上面其他代碼都很好理解,只有ProgressBar有一個 indeterminate 屬相需要解釋一下:
一般的ProgressBar都是用于顯示加載進(jìn)度,如果我們直到當(dāng)前的具體進(jìn)度,那個這個屬性要設(shè)置為true,并設(shè)置正確的進(jìn)度,如果我們也不知道正確的進(jìn)度,則設(shè)置為false。
布局設(shè)置好了,下一步就是設(shè)置ProgressBar的漸變樣式,這里我們需要自定義一個Drawable。
自定義的Drawable代碼如下:
下面解釋一下上面的代碼:
外層的 rotate 表明這是一個旋轉(zhuǎn)的動畫,并且該規(guī)定了開始角度和結(jié)束角度,還有旋轉(zhuǎn)中心為圓心
內(nèi)層的shape定義了形狀為一個環(huán)(ring),其中有三個屬性:
<1> innerRadiusRatio 為外環(huán)半徑和內(nèi)徑的比值,比如外環(huán)半徑為30,內(nèi)環(huán)半徑為10,則比值為3
<2> thicknessRatio 為外環(huán)半徑與環(huán)的厚度的比值
<3> useLevel 如果為true,則可以在LevelListDrawable中使用
接下來的 gradient 定義了漸變效果,規(guī)定了開始結(jié)束的顏色,還規(guī)定漸變方式為掃描漸變
最后一步,我們通過一個ProgressBar的屬性給他設(shè)置我們上面定義的樣式:
android:indeterminateDrawable="@drawable/loading_drawable"
關(guān)于Android中怎么利用ProgressBar實現(xiàn)顏色漸變問題的解答就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道了解更多相關(guān)知識。