之所以取这个名字,是因为,我学习自定义控件时,找了好些文章,很长时间,没有掌握或弄明白控件是如何定义出来的,显示在手机屏幕上。虽然,文章写的内容不少,也详细,就是没讲出根本。今天,我讲出自定义控件的根本,使学习者再看网上的文章,头脑就清晰了。
android自定义控件,主要方法有两个。一个是自定义布局控件:RelativeLayout或LinearLayout ,这时,用的命令是 addView(); 看网上文章时,注意这个方法,此是关键。另一个自定义控件的方法是:onDraw();方法。
网上文章再多,也离不开上述两个方法或要诀。不是用addView();就是用onDraw();方法,最终完成自定义控件。
android自定义控件,基本格式是:public class myView extends LinearLayout{}; 或者是public class myView extends RelativeLayout{}; 此是用addView();方法定义控件。
另一种格式是:public class myView extends View{};
protected void onDraw(Canvas canvas){
super.onDraw(canvas);
}
其它代码,都是为了最终实现上述两个方法。
android定义控件,说白了,就是新建一个类,继承View或布局layout,.或者用onDraw方法根据得到的,设置的属性画出控件;或者是向布局中加文字,图片等,此时用addView();方法。至于建资源xml文件,使用TypeArray 获得属性值,并不重要。
下面3个需要复写的方法,是必须的,可以只写其中的一个或两个。