android中如何自定义attributes

写程序中可能需要用到一些自定义的view控件,这样就需要增加一些自定义的属性。

比如说我要做个股票报价的TextView,涨是红色,跌是绿色

1。先在values目录下创建styles.xml

<resources>

<style name=" Widget. MyTextView" parent="android:Widget" >

<item name="positiveColor" >#FFFF0000</item>

<item name="negetiveColor" >#FF00FF00</item>

</style>

</resources>

2。上面的步骤完成后,在values目录下创建一个attrs.xml文件,告诉程序你自定义的item是什么类型的

<resources>

<declare-styleable name=" MyTextView" >

<attr name=" positiveColor " format="color" />

<attr name=" negetiveColor " format=" color " />

</declare-styleable>

</resources>

3。在layout设计中引用自定义view并加入style

<com.pan.MyTextView

style="@style/ Widget. MyTextView"

android:layout_width="wrap_content"

android:layout_height="wrap_content" />

4。activity中读取

int positiveColor;

int negetiveColor;

public MyTextView(Context context, AttributeSet attrs, int defStyle)

{

super (context, attrs, defStyle);

TypedArray a = context.obtainStyledAttributes( attrs, R.styleable.TestView, defStyle, 0 );

int n = a.getIndexCount();

for (int i = 0 ; i < n; i++)

{

int attr = a.getIndex(i);

switch (attr)

{

case R.styleable.MyTextView_positiveColor:

positiveColor = a.getColor(attr, Color.RED);

break ;

case R.styleable.MyTextView_negetiveColor:

negetiveColor = a.getColor(attr, Color.Green);

break ;

}

}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值