侧边栏壁纸
博主头像
Stars-One的杂货小窝博主等级

所有的创作都是有价值的

  • 累计撰写 257 篇文章
  • 累计创建 46 个标签
  • 累计收到 27 条评论

目 录CONTENT

文章目录

Android TextView自动缩放能够完整显示出一行

Stars-one
2023-11-20 / 0 评论 / 0 点赞 / 105 阅读 / 1804 字

app开发中,需要TextView可以在不同的屏幕大小要完整显示出文字,而不是显示省略号

可以使用以下代码,让TextView字体实现自适应(不过具体算法已经实现了,我们只需要设置下即可实现效果)

//设置最大行数为1行(在xml中设置也可)
tvPhotoRecovery.maxLines = 1
TextViewCompat.setAutoSizeTextTypeWithDefaults(tvPhotoRecovery, TextViewCompat.AUTO_SIZE_TEXT_TYPE_UNIFORM)
//设置字体大小范围为12sp-22sp
TextViewCompat.setAutoSizeTextTypeUniformWithConfiguration(tvPhotoRecovery, 12, 22, 1, TypedValue.COMPLEX_UNIT_SP)

setAutoSizeTextTypeUniformWithConfiguration方法的4个参数说明:

setAutoSizeTextTypeUniformWithConfiguration(
	TextView textView,
	int autoSizeMinTextSize, //字体最小数值
	int autoSizeMaxTextSize, //字体最大数值
	int autoSizeStepGranularity,//自动适应的步长(简单理解就是在最小和最大范围之间,从最小数值递增步长[n]来计算最符合的字体大小)
	int unit //字体单位,sp就可以
)
0

评论区