自定义控件或布局如何传属性值
来源:互联网 发布:access 导入excel sql 编辑:程序博客网 时间:2024/06/11 15:51
自定义的控件或布局,如何将属性传过去,本文以自定义textview为例,简单介绍一下。
1、首先创建一个类,MyTextView 继承TextView。
2、vaule 下新建一个xml文件,命名为attrs.xml。这里定义两个属性。一个是textsize 一个是textcolor
<?xml version="1.0" encoding="utf-8"?>
<resources>
<declare-styleable name="mytextview">
<attr name="textsize" format="dimension" />
<attr name="textcolor" format="reference|color"/>
</declare-styleable>
</resources>
3、在界面布局文件中,引入自定义的 MyTextView
<com.mobo.reading_androidapp.CEDetails.MyTextView
android:id="@+id/tv_cedetails_main_content"
android:layout_width="match_parent"
android:layout_height="wrap_content"
mytextview:textcolor="@color/gray"
mytextview:textsize="@dimen/txt_rem" />
最后两行为颜色和字体大小 属性,注意对应
4、在MyTextView 的构造方法中 获取布局中的属性,设置给控件
public MyTextView(Context context, AttributeSet attrs) {
super(context, attrs);
/ **你所传的属性,都在t中*/
TypedArray t = context.obtainStyledAttributes(attrs,
R.styleable.mytextview);
textSize = t.getDimension(R.styleable.mytextview_textsize, 24);
textColor=t.getColor(R.styleable.mytextview_textcolor, getResources().getColor(R.color.gray));
paint1.setTextSize(textSize);
paint1.setColor(textColor);
paint1.setAntiAlias(true);
paintColor.setAntiAlias(true);
paintColor.setTextSize(textSize);
paintColor.setColor(Color.BLUE);
}
其他重写方法省略。如有疑问可以留言哦。同时欢迎高手指点。
- 自定义控件或布局如何传属性值
- Android中布局或控件自定义背景
- GridView属性,布局的抽取,自定义属性,自定义控件
- Android使用后自定义控件如何在该布局文件以外动态的设置自定义控件的属性
- 写自定义控件时如何将.net控件的属性或事件显示在属性窗体中
- 如何给自定义控件添加自定义属性
- android控件——创建自定义控件或布局
- 4.2 自定义控件 之 自定义属性与引入布局
- VB6:自定义控件如何设置默认属性
- 自定义控件如何获取 android:layout_width属性
- C#为控件或自定义控件添加自定义属性,自定义事件
- 自定义控件----自定义属性
- c# 自定义控件如何在属性栏添加自定义事件
- Android自定义控件:如何使用自定义的XML属性
- Android自定义控件:如何使用自定义的XML属性
- Android自定义控件系列二:如何自定义属性
- Android简单了解自定义控件和自定义属性如何使用
- Android 布局控件属性
- 【第四回】新手入门OCCT的一条学习主干线
- JAVA反射机制
- ubuntu编译qt5.3 WebKit
- SDUT Pots 2780
- CSS样式实践篇
- 自定义控件或布局如何传属性值
- Javascript 面向对象编程(一):封装
- POJ1009
- SAP CRM IPC
- 输出1到最大的N位数
- java transient的作用及使用方法
- Viewpager嵌套滑动冲突解决办法
- 关于Unity3D的协程(Coroutine)
- 黑马视频学习笔记-预处理指令(二)