美文网首页
自定义view 详解

自定义view 详解

作者: Skypew | 来源:发表于2017-06-15 17:43 被阅读10次

    参考文章
    非著名程序员http://www.gcssloop.com/#blog
    抛物线http://hencoder.com/ui-1-1/
    鸿洋http://blog.csdn.net/lmj623565791/article/details/24252901/

    基本步奏

    1、自定义View的属性
    2、在View的构造方法中获得我们自定义的属性
    [ 3、重写onMesure ]
    4、重写onDraw

    attrs.xml文件参考

    format是值该属性的取值类型:
    一共有:string,color,demension,integer,enum,reference,float,boolean,fraction,flag;

      <?xml version="1.0" encoding="utf-8"?>  
    <resources>      
        <attr name="test" format="integer"/>  
        <declare-styleable name="customview">  
            <attr name="test"/> <!-- 复用声明在外部的属性定义test  -->  
              
            <attr name="atr1" format="reference"/> <!-- 参考引用某个资源 如@drawable/img-->  
            <attr name="atr2" format="string"/> <!-- 属性为string类型 -->  
            <attr name="atr3" format="string|reference"/> <!--  string类型或引用 -->  
            <attr name="atr4" format="boolean"/> <!-- 布尔型 true false  -->  
            <attr name="atr5" format="integer"/> <!-- 整数 -->  
            <attr name="atr6" format="float"/> <!-- 浮点  -->  
            <attr name="atr7" format="color"/> <!-- 颜色值 #rgb  #rrggbb #argb #aarrggbb -->  
            <attr name="atr8" format="dimension"/> <!-- 尺寸值 -->  
            <attr name="atr9" format="fraction"/> <!-- 百分比 -->  
            <attr name="atr10"> <!-- enum -->  
                <enum name="spring" value="1"/>  
                <enum name="summer" value="2"/>  
            </attr>  
            <attr name="art11"> <!-- 位或运算 表示 spring|summber  -->  
                <flag name="spring" value="4"/>  
                <flag name="summer" value="8"/>  
            </attr>  
        </declare-styleable>      
    </resources>  
     
    

    相关文章

      网友评论

          本文标题:自定义view 详解

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