Android 自定义view的知识梳理。
關于越來越多的新手找不到自定義view的學習資料或者無法學會自定義view。
本篇專門講解一下初級進階必經之路,自定義view。。
我們先把自定義View細分一下,分為兩種?
A 自定義ViewGroup?
B 自定義View
ViewGroup 就是個容器,
簡單自定義我們一般采用繼承特殊view或者ViewGroup 的方式。
比如做一個倒計時的Button
還有就是繪制的方式去繪制自己想要的view。
比如繪制圓角矩形作為Button背景
下面看下自定義view的步驟:
1、自定義View的屬性
2、在View的構造方法中獲得我們自定義的屬性
3、重寫onMesure?
4、重寫onDraw
view的屬性定義在?res/ values/ ?下建立一個attrs.xml文件中
<resources> <declare-styleable name="MyView"> <attr name="textColor" format="color"/> <attr name="textSize" format="dimension"/> </declare-styleable> </resources> xmlns:my=http://schemas.android.com/apk/res/com.example.xhelloworld <com.example.xhelloworld.MyView android:layout_width="fill_parent" android:layout_height="wrap_content" my:textColor="#FFFFFFFF" my:textSize="22dp" />前兩部算是完成了。。。
接下來需要實現具體的MyView ?類
根據需要一般采用繼承特殊view或者ViewGroup 的方式。
重點強調構造函數:
如果要在布局文件中用到,還需要添加一個構造方法:
public MyView?(Context context,AttributeSet attrs){
? ? ? ?super(context, attrs); ?
? ? }
如果寫兩個參數的構造函數,就需要先實現一個參數的構造函數
public class MyView?extends TextView{
// 當在代碼中創建對象時會被調用
? ? public MyView?(Context context) {
? ? ? ?super(context);
? ? }
}
這就是為什么需要這兩個構造參數的原因。
時間問題先寫到這,待續。。。。。
總結
以上是生活随笔為你收集整理的Android 自定义view的知识梳理。的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Android 3D开发,OpenGL
- 下一篇: Android studio怎么配置ja