本文讲述如何在布局文件中添加原本所不具备的属性,以PagerTabStrip控件为例,增加textColor与textSize属性。

一、属性声明

新建res/values下的attrs.xml文件(文件名自取),在resources中增加declare-styleable,attr节点即扩展的属性。

declare-styleable:其name属性值为所修改的控件名;

attr:其name属性为添加的属性名,其format属性为新属性的数据类型。

<resources><declare-styleable name="myPagerTab"><attr name="android:textColor" format="color"/><attr name="android:textSize" format="dimension"/></declare-styleable>
</resources>


二、构造对象

新建类myPagerTab继承自PagerTabStrip

2.1 重写构造函数:构造函数一般需要重写三种,分别是:

public myPagerTab(Context context)//在声明对象时采用
public myPagerTab(Context context, AttributeSet attrs)//布局文件中引用时采用
public myPagerTab(Context context,AttributeSet attrs,int def)//在代码中指定默认风格,其中第三个参数时参照类型(reference),使用方式参照《AS开发实战》P192。

2.2 重写测量函数:onMeasure,非必须,仅在复杂视图中重写

2.3 重写绘图函数:在onLayout、onDraw、dispatchDraw中视情况重写一个至多个

private int textColor = Color.BLUE;
private int textSize = 30;
@Override
protected void onDraw(Canvas canvas) { // 绘制函数setTextColor(textColor); // 设置标题文字的文本颜色setTextSize(TypedValue.COMPLEX_UNIT_SP, textSize); // 设置标题文字的文本大小super.onDraw(canvas);
}

2.4 实现的myPagerTab控件文本效果

把combobox控件添加到datagridview控件中_自定义系列:控件属性添加相关推荐

  1. ASP.NET 2.0 中的 DataSource 系列控件

    在ASP.NET 2.0中,引入了DataSource系列控件,扔一个到页面上并且选择性的配置好SELECT/UPDATE/INSERT/DELETE对应的操作,它就能够和数据空间无缝合作自动处理查询 ...

  2. Android中通过自定义签名控件实现手写签名

    场景 实现手写签名并获取签名照片 注: 博客: BADAO_LIUMANG_QIZHI的博客_霸道流氓气质_CSDN博客-C#,SpringBoot,架构之路领域博主 关注公众号 霸道的程序猿 获取编 ...

  3. [原创]在ObjectDataSource中使用自定义Web控件提供查询参数

    微软的东西就是好用,不过各种细小问题也是不少的. 比如,在ObjectDataSourc中设定选择查询时,如果是带有参数的查询,则会弹出定义参数对话框. 这个对话框里可以选择用于查询的参数来源,如果是 ...

  4. python自定义类的属性_我可以将自定义方法/属性添加到内置Python类型吗?

    For example-say I want to add a helloWorld() method to Python's dict type. Can I do this? JavaScript ...

  5. WinForm中使用WPF的控件

    在WinForm中可以使用WPF中的控件,或者由WPF创建的自定义控件: 步骤1:创建WinForm工程: 步骤2:在WinForm工程的解决方案资源管理器中,在刚刚创建的WinForm解决方案中新建 ...

  6. Android 自定义组合控件小结

    Android 自定义组合控件小结 引言 接触Android UI开发的这段时间以来,对自定义组合控件有了一定的了解,为此小结一下,本文小结内容主要讨论的是如何使用Android SDK提供的布局和控 ...

  7. 主域控宕机无法恢复后,如何配置辅助域控继续工作

    情况如下: 系统基础结构如下:一个主域控,一个辅助域控且都安装AD与DNS集成区. 如果:   主域控宕机且无法恢复,请问辅助域应做些什么才能替代主域控继续工作? 第一步:在辅助域控上清除主域控AD数 ...

  8. html添加添加只读属性,JavaScript如何将readonly属性添加到input标签

    在JavaScript中可以使用setAttribute()方法将readonly属性添加到表单的input字段中. setAttribute()方法可将已定义的属性添加到元素,并为其提供定义的值.如 ...

  9. Winform DataGridView单元格中动态添加多个控件

    简介: 在DataGridView的单元格中动态添加多个控件.例如在DataGridViewTextBox单元格中,添加CheckBox和Button控件.主题思路就是一个动态控件的大小,位置,显示, ...

最新文章

  1. 让nginx支持php和path_info(新版本)
  2. 一阶导与二阶导的关系_数学分析|第九章 定积分关于二阶导函数正负和定积分结合证明不等式问题总结...
  3. Visual Studio2019 应用程序无法正常启动0xc000007b
  4. 使用PowerShell deprovision O365 资源
  5. mysqldump: Got error: 1449
  6. python中dump用法_python中json庫中的load、loads、dump、dumps的區別與用法
  7. leetcode 509. 斐波那契数(dfs)
  8. 32岁了学python来的及吗_为什么每个人都应该在2020年学习Python?
  9. oracle表空间状态如何离线,六步了解Oracle表空间状态
  10. 多线程生成的原因(Java内存模型与i++操作解析)
  11. 在.NET中读写INI文件 ——兼谈正则表达式的应用
  12. 压缩等级_魔兽世界:9.0会落实等级压缩吗,简单分析一下压缩等级的好处
  13. 【面向代码】学习 Deep Learning(一)Neural Network
  14. [Android] 开发一款软件我学到了些什么?
  15. indesign增效工具缺失_下载了Indesign CS5,但是文件打不开,说缺少增效工具,如何处理?...
  16. cboard centos7安装步骤
  17. 如何搭建一个完整的视频直播系统?
  18. application配置文件读取!
  19. 中了一篇ccf的b类会议sdm'15,要去温哥华参会。很高兴啊!!!!
  20. 盘后复盘 20160622

热门文章

  1. jmeter吞吐量_深入理解Jmeter常用定时器
  2. ad用户和计算机报错,AD常用排错工具
  3. 集客家客运维那些事_2011年集客家客代维考试题库V2
  4. 公众平台模板消息所在行业_微信公众号模板消息功能怎么快速推送?
  5. linux怎么64位,在linux下如何查看CPU是否支持64位
  6. linux 后台程序 cout输入到文件,istringstream在读文件时候的应用
  7. 01初识鸿蒙_移动通讯技术的发展
  8. 广东工业大学专项设计_2020年广东工业大学本科招生计划发布!
  9. linux下字符串操作,Linux Bash 中字符串操作
  10. onnx模型部署 python_onnxruntime模型部署流程