declare-styleable的详细用法

declare-styleable的详细用法简述declare-styleable的定义使用规则,做好笔记方便自己后期使用也方便他人使用。

大家好,又见面了,我是你们的朋友全栈君。

1.在resource中定义declare-styleable。

<declare-styleable name="SmileRating">
    <attr name="angryColor" format="color" />
    <attr name="normalColor" format="color" />
    <attr name="drawingColor" format="color" />
    <attr name="showLine" format="boolean" />
    <attr name="placeHolderSmileColor" format="color" />
    <attr name="placeHolderBackgroundColor" format="color" />
    <attr name="textSelectionColor" format="color" />
    <attr name="textNonSelectionColor" format="color" />
</declare-styleable>
2.使用:<com.XXX.XXXView>  
 android:id="@+id/ratingView"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    app:angryColor="#fff"
    android:layout_centerVertical="true" />

3.在构造方法中获取属性值(注意getColor的key格式)

TypedArray a = getContext().obtainStyledAttributes(attrs, R.styleable.SmileRating);
Color1 = a.getColor(R.styleable.SmileRating_angryColor, defValue);
Color2 = a.getColor(R.styleable.SmileRating_normalColor, defValue);
Color3 = a.getColor(R.styleable.SmileRating_drawingColor, defValue);
a.recycle();

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/158544.html原文链接:https://javaforall.net

(0)
上一篇 2022年7月13日 上午11:16
下一篇 2022年7月13日 上午11:16


相关推荐

  • echarts实现中国地图(Vue)

    1,安装echartsnpminstallecharts–save2,引入importechartsfrom”echarts”;import’echarts/map/js/china.js’//引入中国地图数据(*********重中之重)3,配制option{visualMap:{//地图图例show:true,left:26,bottom

    2022年4月5日
    331
  • 逻辑程序设计语言Prolog

    逻辑程序设计语言PrologProlog 概念 Prolog PROgrammingi 的缩写 语言是一种基于 Horn 子句的逻辑型程序设计语言 也是一种陈述性语言 Prolog 与人工智能的知识表示 自动推理 图搜索 产生式系统和专家 知识 系统有着天然的联系 很适合智能程序设计 若想详细了解可自行百科 http baike baidu com item Prolog 今天我们先搞明

    2026年3月19日
    2
  • JAVA一般项目开发流程

    JAVA一般项目开发流程一个 java 开发项目过程 1 项目启动 1 项目组成立 公司成员 客户成员 2 制定项目预期目标 3 制定项目计划周期 4 建立好项目组成员沟通机制 2 需求调研 1 创建调研计划 协调调研时间 2 收集客户资料 获取客户需求 所有的资料都需要保留一份 资料中存疑的需要及时询问 3 编写需求文档 重点描述出客户的业务流程和性能要求 采用 Word Excel Rose 等形式 4 需求变更记录

    2026年3月18日
    2
  • idea 2022.01.21 激活码【2022免费激活】2022.02.26「建议收藏」

    (idea 2022.01.21 激活码)好多小伙伴总是说激活码老是失效,太麻烦,关注/收藏全栈君太难教程,2021永久激活的方法等着你。https://javaforall.net/100143.htmlIntelliJ2021最新激活注册码,破解教程可免费永久激活,亲测有效,上面是详细链接哦~2KLKA7BQFO-eyJsaWNlbnNlSWQiOi…

    2022年4月1日
    98
  • javascript 中contentWindow和 frames

    javascript 中contentWindow和 framescontentWindow属性是指指定的frame或者iframe所在的window对象IE 中为frames["id"]其他为document.getElementById("id").contentWindowcontentWindow属性是指指定的frame或者iframe所在的window对象在IE中iframe或者frame的contentWindow属性可以省略,但在Firef…

    2022年10月21日
    5
  • Android中的shell循环命令

    Android中的shell循环命令新建test.txt,写入:i=0;while[$(($i))-le5];doi=$(($i+1));echo$i;done;执行这个文件adbshell<test.txt

    2022年7月24日
    9

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号