TextView自动调整字体大小

autoSizeMinTextSize、autoSizeMaxTextSize、autoSizeTextType
设置TextView自动调整字体大小

1、demo示例

<string name="short_word">A B C D E F</string>
<string name="long_word">a b c d e f d h i g k l m n o p q r s t u v w x y z A B C D E F G H I G K L M N O P O R S T U V W X Y Z a b c d e f d h i g k l m n o p q r s t u v w x y z</string>
	<TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_margin="20sp"
        android:background="@color/black"
        android:gravity="center_vertical"
        android:maxLines="2"
        android:minLines="1"
        android:text="@string/short_word"
        android:textColor="@color/white"
        android:textSize="40sp"
        app:autoSizeMaxTextSize="40sp"
        app:autoSizeMinTextSize="10sp"
        app:autoSizeStepGranularity="1sp"
        app:autoSizeTextType="uniform" />

short_word
在这里插入图片描述
long_word
在这里插入图片描述

2、属性说明

autoSizeMaxTextSize最大字号
autoSizeMinTextSize最小字号
autoSizeStepGranularity粒度,TextView在MinTextSize-MaxTextSize之间按StepGranularity的值为增量或减量来跳动
autoSizePresetSizes预设大小,为TextView设置自动调整字体大小跳动时所选的值
autoSizeTextTypenone: 关闭自动调整功能;uniform: 均匀缩放水平轴和垂直轴

注:同时设置了autotoSizePresetSizes和autoSizeStepGranularity,则autoSizeStepGranularity的值将被忽略

autotoSizePresetSizes的使用
在这里插入图片描述

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <array name="auto_text_size">
        <item>10sp</item>
        <item>15sp</item>
        <item>30sp</item>
        <item>38sp</item>
        <item>39sp</item>
        <item>40sp</item>
    </array>
</resources>
	<TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_margin="20sp"
        android:background="@color/black"
        android:gravity="center_vertical"
        android:maxLines="2"
        android:minLines="1"
        android:text="@string/long_word"
        android:textColor="@color/white"
        android:textSize="40sp"
        app:autoSizeMaxTextSize="40sp"
        app:autoSizeMinTextSize="10sp"
        app:autoSizePresetSizes="@array/auto_text_size"
        app:autoSizeTextType="uniform" />
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

KillerNoBlood

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值