美文网首页
android自定义控件,三个构造方法的总结

android自定义控件,三个构造方法的总结

作者: Longmaxie | 来源:发表于2016-08-02 08:48 被阅读465次

    一般步骤为:
    1.创建控件的类文件,定义其功能逻辑。一般继承自现有控件或者View
    2.在res/values目录下创建attrs.xml文件,用于定义该控件的xml标签属性,方便在使用xml声明该控件时设置参数
    3.实现该控件的构造器,在构造器中把xml标签属性与后台代码中的变量相连接
    4.完成以上步骤之后,便可使用该控件
    注意: View三个构造函数:
    public View (Context context) 是在java代码创建视图的时候被调用 ,当不需要使用xml声明或者不需要使用inflate动态加载时候,实现此构造函数即可 。 如果是从xml填充的视图,就不会调用这个

    public View (Context context, AttributeSet attrs) 当需要在xml中声明此控件,则需要实现此构造函数。并且在构造函数中把自定义的属性与控件的数据成员连接起来,这个是在xml创建但是没有指定style的时候被调用, 即写在xml里的 调用2个参数的 attr里边传过来的是 xml里边对应的height width等参数,包括自己定义的参数。

    public View (Context context, AttributeSet attrs, int defStyle) 接受一个style资源

    View重要的回调
    onFinishInflate() 在此控件被通过xml声明的方式创建之后调用
    onMeasure(in,int) 计算本控件的宽高,如果继承自原有控件,则一般不需要重写此方法
    onLayout() 用于布局控件,对于不是继承ViewGroup的控件,一般不需要重写此方法
    onDraw() 在绘制控件时候调用,控件具体长什么样子就在此方法中实现

    相关文章

      网友评论

          本文标题:android自定义控件,三个构造方法的总结

          本文链接:https://www.haomeiwen.com/subject/tqsfsttx.html