android实现自定义控件及如何在其他项目中使用

自定义控件

当android提供的控件不满足需求时, 我们需要自己去定制所需要的控件. 例如在一个TV项目中, 我们需要一种button, 当不选择时, 文本颜色是白色, 当选中时, 文本颜色是黑色, 这时android中自带的button是无法实现的, 那么我们需要去自己定制这种控件.


自定义控件的步骤一般分为:

(1). 声明一个view对象, 继承相对布局,或者线性布局或者其他的ViewGroup.

(2). 在自定义的View对象的构造方法里面就把布局都初始化完毕.

(3). 根据需求, 扩展自定义控件.


根据需求我们去实现改变文本颜色的button, 命名为DButton, 首先:

1设置自定属性

在 value 目录下创建 名为 attrs.xml文件, 在此文件中声明自定义的属性

<?xml version="1.0" encoding="utf-8" ?>
<resources>

    <declare-styleable name="DButton">
        <attr name="normalColor" format="reference|color" />
        <attr name="selectedColor" format="reference|color" />
        <attr name="text" format="reference|string" />
        <attr name="textSize" format="dimension" />
    </declare-styleable>

</resources>
通过normalColor属性来设置button没有选中时的文本颜色, selectedColor属性来设置button选中时的文本状态.

关于format属性有:

dimension 尺寸值

reference  资源ID

color          颜色值

boolean    布尔值

float           浮点值

integer     整型值

string       字符串

enum       枚举值

flag          位或运算

这些属性可以组合使用, 例如上面的 format="reference | color"


2. 创建DButton对象, 继承LinearLayout

public class DButton extends LinearLayout 
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值