在我的 Activity 中,我有三个具有自动调整大小的文本 View (不使用支持库):

<TextView
            android:id="@+id/textView_date"
            android:layout_width="0dp"
            android:layout_height="0dp"
            android:layout_marginEnd="8dp"
            android:layout_marginStart="8dp"
            android:layout_marginTop="8dp"
            android:autoSizeTextType="uniform"
            android:gravity="center"
            android:maxLines="1"
            android:text="1, Jan"
            app:layout_constraintBottom_toTopOf="@id/guideline_horizontal_date_time"
            app:layout_constraintEnd_toStartOf="@id/textView_time"
            app:layout_constraintStart_toStartOf="parent"
            app:layout_constraintTop_toTopOf="parent" />

<TextClock
            android:id="@+id/textView_time"
            android:layout_width="0dp"
            android:layout_height="0dp"
            android:layout_marginEnd="8dp"
            android:layout_marginStart="8dp"
            android:layout_marginTop="8dp"
            android:autoSizeTextType="uniform"
            android:gravity="center"
            android:text="12:00 AM"
            app:layout_constraintBottom_toTopOf="@id/guideline_horizontal_date_time"
            app:layout_constraintEnd_toStartOf="@id/textView_day"
            app:layout_constraintStart_toEndOf="@id/textView_date"
            app:layout_constraintTop_toTopOf="parent" />

<TextView
            android:id="@+id/textView_day"
            android:layout_width="0dp"
            android:layout_height="0dp"
            android:layout_marginEnd="8dp"
            android:layout_marginStart="8dp"
            android:layout_marginTop="8dp"
            android:autoSizeTextType="uniform"
            android:gravity="center"
            android:maxLines="1"
            android:text="Monday"
            app:layout_constraintBottom_toTopOf="@id/guideline_horizontal_date_time"
            app:layout_constraintEnd_toEndOf="parent"
            app:layout_constraintStart_toEndOf="@id/textView_time"
            app:layout_constraintTop_toTopOf="parent" />

当我运行它时,我得到以下结果
android - 统一自动调整多个TextView-LMLPHP

如何使日期和日期文本 View 的大小一致?
我不想设置一个相等的android:autoSizeMaxTextSize属性来做到这一点。

我尝试了以下逻辑(科特琳)
if(view_date.textSize>view_day.textSize)
            view_date.textSize = view_day.textSize
else
            view_day.textSize=view_date.textSize

但是它不起作用,文本大小不会更改。

最佳答案

自动调整大小的目的是让Android框架根据屏幕尺寸决定应选择的文本大小。

在您的情况下,我将更改实施方式。您可以使用一个TextView而不是三个TextView依次链接,并使用Formatter方法填充日期/时间/星期几。这样,文本将始终具有相同的大小。

关于android - 统一自动调整多个TextView,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/48134989/

10-10 18:44