我使用支持库 26 中添加的新自动调整大小功能。我阅读了可以在此处找到的文档: https ://developer.android.com/preview/features/autosizing-textview.html
我想它应该以这种方式工作:您可以使用此属性启用自动调整大小:app:autoSizeTextType="uniform"
。我认为TextView
应该使用所有可用空间来显示整个文本(不仅仅是一部分 - 它不应该被裁剪)并且textSize
应该尽可能大。如果您需要限制文本的最大或最小大小,则可以使用以下两个属性:
app:autoSizeMinTextSize="XXsp" // (you can also use px or dp values.)
或者
app:autoSizeMaxTextSize="XXsp"
到现在为止还挺好。假设我需要一个宽度为 56dp 的 TextView。我有不同长度的文本,我想将这些文本设置为 this TextView
。它应该自动调整大小,以便以最大可能显示整个文本(所有字符+未裁剪)textSize
。
这是我的文本视图:
<android.support.v7.widget.AppCompatTextView
android:id="@+id/vName"
style="@style/TextView.AutoSize"
android:layout_width="56dp"
android:gravity="bottom|center_horizontal"
android:maxLines="1"
app:autoSizeMinTextSize="1px"
app:autoSizeTextType="uniform"
app:layout_constraintBottom_toTopOf="@id/vGuideline"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent" />
不幸的是,文本视图被裁剪了。我想将此字符串设置为上面 TextView 的文本:“Groupa”,但结果如下:
(TextView 位于带有黄色圆圈背景的 ConstraintLayout 内。)
如您所见,textview 根本没有调整大小。你知道该怎么做吗?
谢谢。