如何将文本缩放到TextView的高度,但水平包装内容

问题描述 投票:0回答:2

我的dplayout_width="wrap_content"TextView的高度固定,而textSizesp的高度固定。我不需要固定的文本大小(由于可变的屏幕密度),而是希望文本垂直缩放到固定的视图范围,并希望TextView宽度能环绕在文本上。我尝试使用autoSizeTextType="uniform",但是文本开始换行到下一行,这很奇怪。有人能用layout_width="wrap_content"来完成TextView的垂直缩放吗?

<androidx.appcompat.widget.AppCompatTextView
    android:id="@+id/name"
    android:layout_height="50dp"
    android:layout_width="wrap_content"
    android:textColor="@color/white"
    android:autoSizeTextType="uniform"
    android:text="Some Text"
    android:background="@drawable/shape_tag_name"
    />
android android-widget
2个回答
0
投票

要在XML中定义文本大小和维的范围,请使用android名称空间并设置以下属性:将autoSizeText属性设置为无或统一。 none是默认值,统一使TextView在水平和垂直轴上均匀缩放。设置autoSizeMinTextSize,autoSizeMaxTextSizeautoSizeStepGranularity属性以定义用于自动调整TextView的尺寸。

<?xml version="1.0" encoding="utf-8"?>
<TextView
    android:layout_width="match_parent"
    android:layout_height="200dp"
    android:autoSizeTextType="uniform"
    android:autoSizeMinTextSize="12sp"
    android:autoSizeMaxTextSize="100sp"
    android:autoSizeStepGranularity="2sp" />

0
投票

您是否尝试过使用app:autoSizeTextType="uniform"?使用android:autoSizeTextType="uniform"仅适用于API级别26或更高。

© www.soinside.com 2019 - 2024. All rights reserved.