[color=blue]先整个思路,不要一提到自定义组件就搞一句什么重写onDraw方法,然后就给一个在Canvas上画一个方块或者圆形的例子就算是自定义组件了,真想给那些提供这种例子的人一句话:"你他妈吃屎去吧!"[/color]
[color=blue]就目前自己了解的自定义组件的三种方式:[/color]
1:组合现有Android默认提供的组件:继承ViewGroup或其子Layout类等布局类进行组合.
2:调整现有Android默认提供的组件:继承View的子类具体类
3:完全自定义组件:继承View基类,里面界面及事件完全由自己控制
[color=blue]自定义组件需要重写构造器:[/color]
1:若自定义组件是用XML配置文件的方式创建出来的,则需要重写***(Context con,AttributeSet attrs)构造方法
2:若自定义组件是用纯JAVA代码NEW出来的,则只需重写***(Context con)构造方法
注:自已定义一个组件给其它程序用时,不知道其它程序到底是用什么方式来创建此组件的,所以两个构造器都要重写
[color=blue]自定义组件设置自己的属性:[/color]参考我的解释篇:[url]http://wujiandong.iteye.com/blog/1184921[/url]
1:完全由JAVA程序实现
2:自己定义一个XML文件来约束使用者怎么设置属性
[color=blue]就目前自己了解的自定义组件的三种方式:[/color]
1:组合现有Android默认提供的组件:继承ViewGroup或其子Layout类等布局类进行组合.
2:调整现有Android默认提供的组件:继承View的子类具体类
3:完全自定义组件:继承View基类,里面界面及事件完全由自己控制
[color=blue]自定义组件需要重写构造器:[/color]
1:若自定义组件是用XML配置文件的方式创建出来的,则需要重写***(Context con,AttributeSet attrs)构造方法
2:若自定义组件是用纯JAVA代码NEW出来的,则只需重写***(Context con)构造方法
注:自已定义一个组件给其它程序用时,不知道其它程序到底是用什么方式来创建此组件的,所以两个构造器都要重写
[color=blue]自定义组件设置自己的属性:[/color]参考我的解释篇:[url]http://wujiandong.iteye.com/blog/1184921[/url]
1:完全由JAVA程序实现
2:自己定义一个XML文件来约束使用者怎么设置属性