首页 > 代码库 > 1、开发自定义组件简要

1、开发自定义组件简要

一、自定义组件分类

Customized Component:继承VIew ,增加更多的属性和事件。  横向扩展

Compound Component:

继承ViewGroup , 把多个简单控件通过布局拼装一个复合控件。横向扩展

 

二、定义组件步骤

1 选择继承类(肯定是View or View的子类).

2 类的初始化:新增属性    属性的初值设定。

3 重载方法:

布局及呈现onDraw() , onMeasure()

事件(自定义事件)onKeyEvent() ...  监听器/重载函数

【原则】

如果只是本项目用,可以用inner class;

如果打算商业发布,需要用单独的类文件;

如果打算商业发布,不要用xml layout文件,而用动态代码生成;

 

三、使用组件

【内部类】

<view

  class="com.android.notepad.NoteEditor$MyEditText" 

  id="@+id/note"

  android:layout_width="fill_parent"

  android:layout_height="fill_parent"

  android:background="@android:drawable/empty"

  android:padding="10dip"

  android:scrollbars="vertical"

  android:fadingEdge="vertical" />

 

【非内部类】

<com.android.notepad.MyEditText

  id="@+id/note"

  ... />

 

1、开发自定义组件简要