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

[Android]文本多的时候让TextView的字体自动变小

为了让 TextView 的字体在文本过多时自动变小,以显示全部文本,可以使用 Android 的 autoSizeTextType 属性。该属性允许 TextView 在空间不足时自动调整字体大小。

在 XML 中,可以这样设置:

<TextView
    android:id="@+id/tv_1_4"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_weight="1"
    android:gravity="center"
    android:maxLines="1"
    android:text="轮 18"
    android:textColor="@color/color_title"
    android:textSize="12sp"
    android:autoSizeTextType="uniform"
    android:autoSizeMinTextSize="8sp"
    android:autoSizeMaxTextSize="12sp"
    android:autoSizeStepGranularity="1sp" />

解释

  • android:autoSizeTextType="uniform": 启用自动调整字体大小功能。

  • android:autoSizeMinTextSize="8sp": 设置文本的最小字体大小。可以根据需要调整此值。

  • android:autoSizeMaxTextSize="12sp": 设置文本的最大字体大小。与 android:textSize 保持一致。

  • android:autoSizeStepGranularity="1sp": 设置字体大小调整的步长。这个属性决定了字体大小调整的粒度。

注意事项

  1. 兼容性:autoSizeTextType 属性在 API 26(Android 8.0 Oreo)及以上版本中可用。如果需要兼容低版本,可以使用支持库中的 AppCompatTextView。

  2. 支持库中的 AppCompatTextView: 如果需要支持较低版本的 Android,可以在布局中使用 AppCompatTextView,并确保在项目中引入了 androidx.appcompat:appcompat 库。

<androidx.appcompat.widget.AppCompatTextView
    android:id="@+id/tv_1_4"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_weight="1"
    android:gravity="center"
    android:maxLines="1"
    android:text="轮 18"
    android:textColor="@color/color_title"
    android:textSize="12sp"
    app:autoSizeTextType="uniform"
    app:autoSizeMinTextSize="8sp"
    app:autoSizeMaxTextSize="12sp"
    app:autoSizeStepGranularity="1sp" />

http://www.dtcms.com/a/34309.html

相关文章:

  • 量子比特的实现与优化技术:解密量子计算的核心
  • 【Python爬虫(45)】Python爬虫新境界:分布式与大数据框架的融合之旅
  • 15-贪心算法
  • (面试经典问题之连接池篇)连接池构成、作用及其基本原理详解
  • mysql8.x导出文件给mysql5.7运行 【解决方案】
  • 玩转Docker | 使用Docker部署本地自托管reference速查表工具
  • 秒鲨后端之MyBatis【2】默认的类型别名、MyBatis的增删改查、idea中设置文件的配置模板、MyBatis获取参数值的两种方式、特殊SQL的执行
  • AI 为金融领域带来了什么突破?
  • 猿创征文 【高级篇】Java 进阶之JVM实战
  • WSL2下ubuntu开启NFS服务
  • 视频的分片上传
  • OSS(对象存储服务)
  • PostgreSQL 常用函数
  • 解锁健康密码,拥抱养生生活
  • Day9 25/2/22 SAT
  • 突破与重塑:逃离Java舒适区,借Go语言复刻Redis的自我突破和成长
  • 深度学习入门:从零开始理解神经网络
  • 顺丰java面试题_顺丰java开发面试分享,顺丰java面试经面试题
  • 代码审计初探
  • 基于CNN的FashionMNIST数据集识别3——模型验证
  • D. C05.L08.贪心算法入门(一).课堂练习4.危险的实验(NHOI2015初中)
  • 清华大学102页PPT 《deepseek从入门到精通》
  • 使用Python脚本转换YOLOv5配置文件到https://github.com/ultralytics/ultralytics:一个详细的指南
  • 《道德经的现代智慧:解码生活与商业的底层逻辑1》
  • escape SQL中用法
  • 9-1. MySQL 性能分析工具的使用——last_query_cost,慢查询日志
  • 修改/etc/hosts并生效
  • 蓝禾,oppo,游卡,汤臣倍健,康冠科技,作业帮,高途教育25届春招内推
  • jmeter 接入deepseek 或者chatgpt
  • qt.qpa.fonts: Unable to open default EUDC font: “EUDC.TTE“