先整个思路,不要一提到自定义组件就搞一句什么重写onDraw方法,然后就给一个在Canvas上画一个方块或者圆形的例子就算是自定义组件了,真想给那些提供这种例子的人一句话:"你他妈吃屎去吧!"
就目前自己了解的自定义组件的三种方式:
1:组合现有Android默认提供的组件:继承ViewGroup或其子Layout类等布局类进行组合.
2:调整现有Android默认提供的组件:继承View的子类具体类
3:完全自定义组件:继承View基类,里面界面及事件完全由自己控制
自定义组件需要重写构造器:
1:若自定义组件是用XML配置文件的方式创建出来的,则需要重写***(Context con,AttributeSet attrs)构造方法
2:若自定义组件是用纯JAVA代码NEW出来的,则只需重写***(Context con)构造方法
注:自已定义一个组件给其它程序用时,不知道其它程序到底是用什么方式来创建此组件的,所以两个构造器都要重写
自定义组件设置自己的属性:参考我的解释篇:http://wujiandong.iteye.com/blog/1184921
1:完全由JAVA程序实现
2:自己定义一个XML文件来约束使用者怎么设置属性
1 楼 gjlping 2011-10-02
哥们讲得在详细一点就好了。
2 楼 wujiandong 2011-10-02
gjlping 写道
哥们讲得在详细一点就好了。
我会在后面根据这里的思路一一给出例子的,因为我自己也在学习阶段,我喜欢自已大概都知道是怎么回事了,再进行总结的~~
3 楼 leer168 2011-10-07
够牛,关注