實現自定義view的方式,從整體上看,只分為三種:組合控制項,繼承控制項,自繪控制項。然後就是根據需要來新增自定義的屬性,就這麼簡單。本文將會針對這4個方面進行詳細的講解。主要內容如下:
一、組合控制項
組合控制項,顧名思義,就是將系統原有的控制項進行組合,構成乙個新的控制項。這種方式下,不需要開發者自己去繪製圖上顯示的內容,也不需要開發者重寫onmeasure,onlayout,ondraw方法來實現測量、布局以及draw流程。所以,在實現自定義view的三種方式中,這一種相對比較簡單。
二、繼承控制項
通過繼承系統控制項(view子類控制項或viewgroup子類控制項)來完成自定義view,一般是希望在原有系統控制項基礎上做一些修飾性的修改,而不會做大幅度的改動,如在textview的文字下方新增下劃線,在linearlayout布局中加乙個蒙板等。這種方式往往都會復用系統控制項的onmeasure和onlayout方法,而只需要重寫ondraw方法,在其中繪製一些需要的內容。
三、自繪控制項
這三種方法中,自繪控制項是最複雜的,因為所有的繪製邏輯和流程都需要自己完成。採用自繪控制項這種方式時,如果自定義view為最終的葉子控制項,那麼需要直接繼承view;而不過自定義view為容器類控制項,則需要直接繼承viewgroup。
js自定義物件的三種方式
js是物件導向的程式語言。物件具有三大特徵 繼承 封裝 多型 物件包含屬性和行為。常規定義物件var person newobject 設定屬性 person.name 張三 person.age 8 設定物件的方法 person.eat function 簡單版定義物件var cat 有關該類的成...
jpa自定義sql的三種方式
1 在repository介面上註解 query引數 1 query select o from agentinfo o where o.userid 1 and o.balance 0 2 query value select from fl agentinfo a inner join sele...
自定義View的兩種方式
一 xib自定義view 1.思路 2.關鍵 1 import23 class45 inte ce67 8 模型資料9 1113 14 15 通過模型資料來建立乙個view 16 1819 end 1 import 2 import 34 inte ce 5 property weak,nonato...