參考的鴻揚大神的部落格 部落格位址
做了乙個圓環進度條,感覺可以深入下,做乙個環形的餅狀圖;
照著他的**,敲了一遍,初步理解了,**裡面給了非常詳細的注釋,主要看**;
步驟還是一樣
- 1、自定義view的屬性
- 2、在view的構造方法中獲得我們自定義的屬性
- 3、重寫onmesure
- 4、重寫ondraw
新建view類
package com.xunku.basetest.customview;
import android.content.context;
import android.content.res.typedarray;
import android.graphics.canvas;
import android.graphics.color;
import android.graphics.paint;
import android.graphics.rectf;
import android.util.attributeset;
import android.util.typedvalue;
import android.view.view;
import com.xunku.basetest.r;
/** * created 鄭賢鑫 on 2017/2/13.
*/public
class
circleview
extends
view
public
circleview(context context, attributeset attrs)
public
circleview(context context, attributeset attrs, int defstyleattr)
}//**資源
a.recycle();
mpaint = new paint();
//繪圖執行緒
new thread()else
}//postinvalidate()可以直接在工作執行緒中重新整理view
postinvalidate();
try catch (exception e)}}
}.start();
}@override
protected
void
ondraw(canvas canvas) else
}}
2.在style中加入自定義屬性值
name="firstcolor"
format="color" />
name="secondcolor"
format="color" />
name="circlewidth"
format="dimension" />
name="speed"
format="integer" />
name="circleview">
name="firstcolor" />
name="secondcolor" />
name="circlewidth" />
name="speed" />
declare-styleable>
3.使用
.xunku.basetest
.customview
.circleview
android:layout_width="200dp"
android:layout_height="200dp"
自定義View 圓環和圓環進度條
可能小夥伴們感覺自定義view很高深,其實大家用多了別人的輪子,研究別人的輪子,自己也要學著造輪子,那就用最簡單的練練手,教小夥伴們自定義view的一些步驟,這可能是小夥伴們最需要的。自定義圓環 import android.content.context import android.conten...
android自定義view(三)
自定義view第三種是 完全自定義 效果如下 需要解決的問題 1 view的測量 onmeasure 2 view的繪製ondraw 3 如果需要變換圖形,需要使用invalid更新,可以實現動態的效果 public class myview extends view public myview c...
自定義view移動整個view
時間比較短,直接上 了 import android.animation.objectanimator import android.content.context import android.graphics.pointf import android.util.attributeset imp...