码迷,mamicode.com
首页 > 移动开发 > 详细

Android-开发自定义组件

时间:2015-06-19 10:38:44      阅读:137      评论:0      收藏:0      [点我收藏+]

标签:android   自定义组件   

Android-开发自定义组件

一 自定义组件分类
1 Customized Component:
当前的组件功能不完善,通常继承View,增加更多的属性和事件,纵向的拓展


2 Compound Component:
继承ViewGroup,把多个简单控件通过布局拼装为一个符合控件,横向拓展


二 定义组件步骤
1 选择继承:
View或者View的子类


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


3 重载方法
布局及呈现
onDraw(), onMessure()


4 事件机制
onKeyEvent
监听器
重载函数(观察者模式)


5 自定义事件
建立接口
interface onIconButtonListener
    {
    public void onKeyDown(String pKeyObject); 
    }
构建接口对象
private onIconButtonListener mOnIconButtonListener;


设置事件监听函数
public void setOnIconButtonListener(onIconButtonListener pOnIconButtonListener)
{
pOnIconButtonListener = mOnIconButtonListener;

重写回调某些事件的方法
@Override
public boolean onKeyDown(int keyCode, KeyEvent event)
{
// TODO Auto-generated method stub

if (mOnIconButtonListener != null)
{
mOnIconButtonListener.onKeyDown("Hello chengzhi");
 


return super.onKeyDown(keyCode, event); 
}


三 使用组件
在xml文件中
若组件类不为内部类
<包名+类名 属性>
<com.chengzhi.standerviewhomework.MyIconButton 属性/>


若组件类为内部类
<View 包名$类名 属性>用于组件是Activity的内部类的时候
<view class="com.chengzhi.standerviewhomework.MyIconButtonActivity$MyIconButton" 属性/>

Android-开发自定义组件

标签:android   自定义组件   

原文地址:http://blog.csdn.net/qq_22075977/article/details/46553655

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!