Android自定義View基礎繪製

2021-08-03 14:37:14 字數 1024 閱讀 8148

1、onmeasure測量(計算寬高)

2、viewgroup進行onlayout(基於位置和寬高布置到螢幕)

3、ondraw檢視顯示自身內容(渲染)

####

canvas

畫布,可以提供檢視顯示的載體,可以繪製文字、幾何圖形、影象、填充顏色

####

paint

畫筆,針對畫布需要繪製的內容的修飾

//建立畫筆

paint = new paint();

//設定畫筆顏色

paint.setcolor(0xff333333);

//設定樣式,stroke表示空心,fill表示實心

paint.setstyle(paint.style.stroke);

//空心可以設定邊框寬度

paint.setstrokewidth(2);

//消除鋸齒

paint.setantialias(true);

//畫筆大小

paint.settextsize(60);

//設定透明

paint.setalpha(0x88);

paint.settextscalex(3);拉伸或者收縮文字

paint.setfakeboldtext(true); 加粗

使用畫筆

protected void ondraw(canvas canvas)

####

檢視重新整理

主線程中重新整理:使用invalidate()

子執行緒重新整理:mview.postinvalidate(); 相當於handler+thread

####

ontouchevent

view中的ontouchevent方法表示事件消耗的方法,如果需要對檢視進行觸控的處理,則可以重寫該方法

@override

public boolean ontouchevent(motionevent event)

return true;

}

Android自定義View 自定義元件

自繪控制項也分兩種,自定義元件和自定義容器,自定義元件是繼承view類,自定義容器時繼承viewgrounp 今天主要分析下自定義元件 還是舉個例子來的實際些,假如我們要畫乙個最簡單的textview,首先想到的就是canvas.drawtext 方法,怎麼畫了?還是得一步一步來 1 寫乙個myte...

Android自定義View實現

android自定義view實現很簡單 繼承view或者其子類,重寫建構函式 ondraw,onmeasure 等函式,根據繼承的類的不同可能有所不同。如果自定義的view需要有自定義的屬性,需要在values下建立attrs.xml。在其中定義你的屬性。在使用到自定義view的xml布局檔案中需要...

Android 自定義View 一

android的ui介面都是由view和viewgroup及其派生類組合而成的。其中,view是所有ui元件的基類,而viewgroup是容納這些元件的容器,其本身也是從view派生出來的。androidui介面的一般結構可參見下面的示意圖 可見,作為容器的viewgroup可以包含作為葉子節點的v...