-3

我对以下手机的应用程序布局有问题。在第一个布局中看起来不错,但在第二个手机中布局与第一个不完全相同。虽然我将 xml 文件放在 (Layout-w480dp) 文件夹中,但我不使用约束布局

华为 G8: 照片 分辨率:1920 x 1080 像素屏幕密度:403 ppi 屏幕密度 (DPI):480 ppi (xxhdpi) (640dp) x (360dp)

华为 Y9: 照片 分辨率:2160 x 1080 像素屏幕密度:407 ppi 屏幕密度 (DPI):480 ppi (xxhdpi) (720dp) x (360dp)

谢谢

4

1 回答 1

0

将此属性添加到您的textViewin xmlapp:autoSizeTextType="uniform" 这将调整文本大小以适合 textview 区域

  <TextView
    android:layout_width="50sp"
    android:layout_height="50sp"
    android:text="Hello World!"
    app:autoSizeTextType="uniform"    
    tools:ignore="MissingPrefix" />

为了进一步定制,您可以设置

    app:autoSizeMaxTextSize="100sp"
    app:autoSizeMinTextSize="20sp"
    app:autoSizePresetSizes="@array/autosize_text_sizes"

autosize_text_sizesarrays.xml 值 res 文件中的数组在哪里 通过右键单击 values -> new -> values resource file -> 将其命名为 arrays.xml 来创建它,它会根据文本区域的可用性动态选择文本大小

<?xml version="1.0" encoding="utf-8"?>
<resources>

<array name="autosize_text_sizes">
    <item>10sp</item>
    <item>50sp</item>
    <item>150sp</item>
</array>

于 2019-01-15T12:46:54.890 回答