当前位置: 首页 > news >正文

【Android】带下划线的TextView

序言

我们有时候需要一个类似这样的显示,上面是文字,下面是一条线
在这里插入图片描述

这样的显示效果是TextView实现不了的,需要我们自己进行修改一下。

实现

创建一个UnderlineTextView,继承系统的TextView

class UnderlineTextView(mContext: Context, attributeSet: AttributeSet) :androidx.appcompat.widget.AppCompatTextView(mContext, attributeSet) {private var underLinePains: Paint? = nullinit {underLinePains = Paint()underLinePains?.color =mContext.resources.getColor(R.color.agree_user_agreement_bottom_line_bg)underLinePains?.strokeWidth = 10funderLinePains?.strokeCap = Paint.Cap.SQUARE}override fun onDraw(canvas: Canvas?) {//注意这个顺序的问题,这样的顺序是先画TextView下面的带颜色的线段underLinePains?.let {canvas?.drawLine((0 - paddingStart).toFloat(),(height - 8).toFloat(),(width + paddingEnd).toFloat(),(height - 8).toFloat(), it)}//现在是进行TextView里面的文本的绘制super.onDraw(canvas)}
}

这是一个很简单的View,实现了我们需要的功能,同样的当我们需要对TextView设置其他的要求时,也可以按照这种步骤实现。

http://www.lryc.cn/news/232277.html

相关文章:

  • 图解未来:数据可视化引领智慧决策时代
  • 例解什么是Python装饰器
  • EtherCAT从站EEPROM组成信息详解(3):字16-63邮箱、EEPROM信息
  • 【文件读取/包含】任意文件读取漏洞 afr_1
  • (八)五种元启发算法(DBO、LO、SWO、COA、LSO、KOA、GRO)求解无人机路径规划MATLAB
  • 通义灵码,阿里巴巴的编程辅助工具
  • Uniapp导出的iOS应用上架详解
  • 计算机视觉基础(7)——相机基础
  • 解决Github上的README无法显示图片
  • qnx 工程目录创建工具 addvariant
  • 计算机视觉+深度学习+机器学习+opencv+目标检测跟踪+一站式学习(代码+视频+PPT)
  • 【AI视野·今日CV 计算机视觉论文速览 第278期】Mon, 30 Oct 2023
  • 深度学习:多模态与跨模态
  • 大数据Hadoop之——部署hadoop+hive+Mysql环境(Linux)
  • Python与ArcGIS系列(四)在地图文档中加入图层
  • QT 程序异常崩溃
  • Ubuntu20.04 通过nmcli命令查看网卡状态为unmanaged
  • 【R Error系列】r - fatal error : RcppEigen. h:没有这样的文件或目录
  • 如何在聊天记录中实时查找大量的微信群二维码
  • 03-CSS基础选择器
  • 【ROS】RViz2源码分析(二):main函数及编译配置详解
  • Vue.js的生命周期钩子
  • 第3章:搜索与图论【AcWing】
  • C++ Qt 学习(七):Qt 线程与并发
  • Django框架之模板层
  • 【AI视野·今日Robot 机器人论文速览 第六十五期】Mon, 30 Oct 2023
  • LuatOS-SOC接口文档(air780E)--otp - OTP操作库
  • 为什么LDO一般不用在大电流场景?
  • Adobe家里的“3D“建模工 | Dimension
  • MIB 6.1810实验Xv6 and Unix utilities(2)sleep