講述一下android自定義控件的方法,同時也爲自己做些記錄和筆記。
做過android的都知道,自定義android控件無外乎三種方法:
- 繼承view,重寫view的方法,使用畫筆畫圖。
- 繼承現有的控件,直接擁有該控件的方法,自定義該控件的佈局,拓展控件的功能。
- 複合控件,將多個控件編寫成一個符合控件,在使用時能夠很方便的複用。
在此之前,無論是哪一種方法,其實都是對View重寫。對View這個類的理解越深,自定義View就越簡單。
前言
View和ViewGroup。ViewGroup繼承View。他們之間是典型的組合模式。也就是ViewGroup可以當做View來使用,並且還能組合View,當成自己的子View。
簡要
View控件是用戶界面的基礎結構。在屏幕上佔據了一塊矩形區域,負責繪製和事件處理。View是創建交互UI控件的基類。包括了Button、TextView,還有ViewGroup等容器類的控件。
構造方法
- 無參構造方法。
只用於測試,修飾符爲default。不會用來構造View使用。
/**
* Non-public constructor for use in testing
*/
View() {
mResources = null;
mRenderNode = RenderNode.create(getClass().getName(), this);
}
- 只有一個參數Context。
使用直接代碼創建View。從佈局生成控件不會調用該構造方法。
public View(Context context)