//畫筆的設置
mPaint.setAntiAlias(false);//消除鋸齒
mPaint.setStrokeWidth(mCircleWidth); // 設置圓環的寬度
mPaint.setStrokeCap(Paint.Cap.ROUND); // 畫出的線是線段,並且線段的末端是圓頭
mPaint.setStyle(Paint.Style.STROKE); // 設置空心
mPaint.getTextBounds(titleText, 0, titleText.length(), mBound);//以 (0,0)爲起點返回一個匹配當前的字符最小的矩形
---------------------------------------------------------------------
getPaddingTop() //獲取設置的view的padding值
setMeasuredDimension(mWide, mHeight);//在onmeasure方法中,重新構造了view的大小
postInvalidate(); //重畫view postInvalidate()在工作者線程中被調用 刷新view
requestLayout(); //重畫view 當被刷新的view需要重新刷新父類佈局的時候進行調用
---------------------------------------------------------------------
//獲取 attrs文件中的屬性值
TypedArray a =context.getTheme().obtainStyledAttributes(attrs, R.styleable.SecondView, defStyleAttr, 0);
//限定弧形區域的上下左右的位置
RectF oval=new RectF(float left, float top, float right, float bottom);
/**
* oval :指定圓弧的外輪廓矩形區域。
startAngle: 圓弧起始角度,單位爲度。
sweepAngle: 圓弧掃過的角度,順時針方向,單位爲度。
useCenter: 如果爲True時,在繪製圓弧時將圓心包括在內,通常用來繪製扇形。
paint: 繪製圓弧的畫板屬性,如顏色,是否填充等。
其中x軸正極是 0 ,y軸的正極是 -90
*/
canvas.drawArc(oval, -90, mProgress, false, mPaint);
/**
畫一個圓
cx:原點x軸位置
cy:原點y軸位置
radius:圓的半徑
paint:畫筆 可以通過畫筆的設置達成很多的效果
*/
canvas.drawCircle(float cx, float cy, float radius, Paint paint);
//一個矩形,一般字符串和圖片都是需要通過這個矩形作爲載體進行畫圖 以下的mbound就是一個矩形對象
Rect rect=new Rect();
mPaint.getTextBounds(titleText, 0, titleText.length(), mBound);//以 (0,0)爲起點返回一個匹配當前的字符最小的矩形
自定義view常用屬性
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.