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

Android 自定义Edittext 和TextView 提示文字和填入内容不同的粗细组件

近期项目中又EditText 以及TextView 这两个组件需要用到提示文字 以及 填入文字要保持不同的粗细程度,所以记录一下

首先 是EditText 组件的自定义
BLEditText 继承的这个组件是一个三方的组件,可以在很大程度上减少drawable的编写,有兴趣的可以去相关的Git去看一下 点击查看,也可以直接继承Edittext,使用的时候直接调用即可

class AutoBoldEditText : BLEditText {constructor(context: Context?) : super(context) {init()}constructor(context: Context?, attrs: AttributeSet?) : super(context, attrs) {init()}constructor(context: Context?, attrs: AttributeSet?, defstyleAttr: Int) : super(context,attrs,defstyleAttr) {init()}private fun init() {//动态设置内容的粗细addTextChangedListener {typeface = if (it.toString().isEmpty()) {Typeface.DEFAULT} else {Typeface.DEFAULT_BOLD}}}
}

下面是TextView的组件
同理,继承也可以直接继承TextView

class AutoBoldTextView(context: Context?, attrs: AttributeSet?, defStyleAttr: Int) :BLTextView(context, attrs, defStyleAttr) {init {addTextChangedListener {if (it.toString().isEmpty()){typeface = Typeface.DEFAULT}else {typeface = Typeface.DEFAULT_BOLD}}}
}

做个记录,有帮助的话,点个赞意思一下呗
在这里插入图片描述

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 【Linux】shell基础知识点(updating)
  • 欧科云链研究院:坎昆升级后,Layer2变得更好了吗?
  • 解决了一个java Bug:Exception in thread “main“ java.lang.NullPointerException
  • [Hello-algo] 复杂度分析
  • 【数据基础】— B树
  • IOT 可编程控制系统
  • 智慧校园信息化大平台整体解决方案PPT(75页)
  • Python | Leetcode Python题解之第227题基本计算器II
  • WebSocket、socket.io-client
  • 前端JS特效第34波:jQuery支持拖拽图片上传的图片批量上传插件
  • 提高项目透明度:有效的跟踪软件
  • 笔记:使用Microsoft.EntityFrameworkCore.Proxies做数据库延迟加载
  • E12.【C语言】练习:求两个数的最大公约数
  • Java实现堆排序算法详解及优化
  • JavaWeb(三:JDBC 与 MVC)
  • 【node学习】协程
  • Bootstrap JS插件Alert源码分析
  • CentOS 7 防火墙操作
  • Java 多线程编程之:notify 和 wait 用法
  • JavaScript服务器推送技术之 WebSocket
  • Java深入 - 深入理解Java集合
  • js学习笔记
  • XForms - 更强大的Form
  • 得到一个数组中任意X个元素的所有组合 即C(n,m)
  • 构建二叉树进行数值数组的去重及优化
  • 关于 Linux 进程的 UID、EUID、GID 和 EGID
  • 关于extract.autodesk.io的一些说明
  • 让你成为前端,后端或全栈开发程序员的进阶指南,一门学到老的技术
  • 容器化应用: 在阿里云搭建多节点 Openshift 集群
  • 如何设计一个微型分布式架构?
  • 说说动画卡顿的解决方案
  • 为物联网而生:高性能时间序列数据库HiTSDB商业化首发!
  • 交换综合实验一
  • ​VRRP 虚拟路由冗余协议(华为)
  • ​软考-高级-系统架构设计师教程(清华第2版)【第15章 面向服务架构设计理论与实践(P527~554)-思维导图】​
  • #宝哥教你#查看jquery绑定的事件函数
  • #微信小程序(布局、渲染层基础知识)
  • (173)FPGA约束:单周期时序分析或默认时序分析
  • (3)(3.2) MAVLink2数据包签名(安全)
  • (C语言)编写程序将一个4×4的数组进行顺时针旋转90度后输出。
  • (M)unity2D敌人的创建、人物属性设置,遇敌掉血
  • (pojstep1.1.2)2654(直叙式模拟)
  • (含react-draggable库以及相关BUG如何解决)固定在左上方某盒子内(如按钮)添加可拖动功能,使用react hook语法实现
  • (一)Mocha源码阅读: 项目结构及命令行启动
  • (转)使用VMware vSphere标准交换机设置网络连接
  • (转载)VS2010/MFC编程入门之三十四(菜单:VS2010菜单资源详解)
  • .NET CORE Aws S3 使用
  • .Net Remoting(分离服务程序实现) - Part.3
  • .Net 高效开发之不可错过的实用工具
  • .NET 同步与异步 之 原子操作和自旋锁(Interlocked、SpinLock)(九)
  • .Net 执行Linux下多行shell命令方法
  • .net知识和学习方法系列(二十一)CLR-枚举
  • @LoadBalanced 和 @RefreshScope 同时使用,负载均衡失效分析
  • @PreAuthorize与@Secured注解的区别是什么?
  • [ 物联网 ]拟合模型解决传感器数据获取中数据与实际值的误差的补偿方法