先看效果圖吧

電腦培訓(xùn),計(jì)算機(jī)培訓(xùn),平面設(shè)計(jì)培訓(xùn),網(wǎng)頁(yè)設(shè)計(jì)培訓(xùn),美工培訓(xùn),Web培訓(xùn),Web前端開(kāi)發(fā)培訓(xùn)

我們要實(shí)現(xiàn)一個(gè)自定義的再一個(gè)圓形中繪制一個(gè)弧形的自定義View,思路是這樣的:

  先要?jiǎng)?chuàng)建一個(gè)類ProgressView,繼承自View類,然后重寫(xiě)其中的兩個(gè)構(gòu)造方法,一個(gè)是一個(gè)參數(shù)的,一個(gè)是兩個(gè)參數(shù)的,因?yàn)槲覀円趚ml文件中使用該自定義控件,所以必須要定義這個(gè)兩個(gè)參數(shù)的構(gòu)造函數(shù)。創(chuàng)建完了這個(gè)類后,我們先不去管它,先考慮我們實(shí)現(xiàn)的這個(gè)自定義View,我們想讓它的哪些部分可以由使用者自己指定,比如說(shuō)這個(gè)Demo中我們讓他的外面圓的外邊框顏色和寬度,還有扇形部分的顏色,扇形增長(zhǎng)的速度等等屬性,這時(shí)候我們要在項(xiàng)目工程目錄的res/values目錄下創(chuàng)建一個(gè)資源文件命名為attrs(注意,名字隨意,只是大多數(shù)情況下都這么叫而已),然后我們?cè)谶@個(gè)資源文件中添加我們想要的屬性,如下:

電腦培訓(xùn),計(jì)算機(jī)培訓(xùn),平面設(shè)計(jì)培訓(xùn),網(wǎng)頁(yè)設(shè)計(jì)培訓(xùn),美工培訓(xùn),Web培訓(xùn),Web前端開(kāi)發(fā)培訓(xùn)

 1 <?xml version="1.0" encoding="utf-8"?> 2 <resources> 3     <declare-styleable name="ProgressView"> 4         <!--circleColor 設(shè)置圓形邊框的顏色  sweepColor設(shè)置扇形變換的顏色 5          startAngle 設(shè)置起始角度 sweepStep 設(shè)置變換的步長(zhǎng)--> 6         <attr name="circleColor" format="color|reference"></attr> 7         <attr name="sweepColor" format="color|reference"></attr> 8         <attr name="startAngle" format="integer"></attr> 9         <attr name="sweepStep" format="integer"></attr>10         <attr name="padding" format="integer"></attr>11     </declare-styleable>12 </resources>

網(wǎng)友評(píng)論