自定義view (三) 用view圓環進度條

2021-07-30 07:56:55 字數 1913 閱讀 8226

參考的鴻揚大神的部落格 部落格位址

做了乙個圓環進度條,感覺可以深入下,做乙個環形的餅狀圖;

照著他的**,敲了一遍,初步理解了,**裡面給了非常詳細的注釋,主要看**;

步驟還是一樣

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