The code below is producing this.
I would like this layout instead:
The large textView on top takes the full with of the parent and the textsize is auto-adjusting with android:autoSizeTextType="uniform". I want to align the textViews below with the actual text, not with the frame of the textView.
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/black"
tools:context=".DisplayActivity">
<TextView
android:id="@+id/timeTextView"
android:layout_width="0dp"
android:layout_height="0dp"
android:autoSizeMaxTextSize="5000dp"
android:autoSizeTextType="uniform"
android:gravity="center_horizontal"
android:text="2:01:04"
android:textColor="@color/textColor"
app:layout_constraintBottom_toTopOf="@+id/guideline2"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<TextView
android:id="@+id/timeTextView2"
android:layout_width="wrap_content"
android:layout_height="0dp"
android:layout_marginStart="148dp"
android:text="2:01:05"
android:textColor="@color/textColor"
android:textSize="50dp"
app:layout_constraintBottom_toTopOf="@+id/guideline4"
app:layout_constraintStart_toStartOf="@id/timeTextView"
app:layout_constraintTop_toTopOf="@+id/guideline2"
app:layout_constraintVertical_bias="0.0" />
<TextView
android:id="@+id/timeTextView3"
android:layout_width="wrap_content"
android:layout_height="0dp"
android:layout_marginEnd="152dp"
android:text="2:01:07"
android:textColor="@color/textColor"
android:textSize="50dp"
app:layout_constraintBottom_toTopOf="@+id/guideline4"
app:layout_constraintEnd_toEndOf="@+id/timeTextView"
app:layout_constraintTop_toTopOf="@+id/guideline2"
app:layout_constraintVertical_bias="0.0" />
<androidx.constraintlayout.widget.Guideline
android:id="@+id/guideline2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal"
app:layout_constraintGuide_percent="0.59" />
<androidx.constraintlayout.widget.Guideline
android:id="@+id/guideline4"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal"
app:layout_constraintGuide_percent="0.75" />
<androidx.constraintlayout.widget.Guideline
android:id="@+id/guideline3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical"
app:layout_constraintGuide_percent="0.5" />
</androidx.constraintlayout.widget.ConstraintLayout>
Since the size and relative position of the text in the top TextView will change depending upon screen size, orientation and autoresizing, there is not a single set of values that you can use to position the other two views and no constraint that will work, so you will have to approach this via code using the Layout of the top TextView after the layout passes complete. The Layout will give you the values of where the text starts within the TextView and where it ends. See the comments in the following for details. I changed the layout a little for the demo. (There are two layouts here: One if the ConstraintLayout and the other is internal to the TextView which defines how the text appears.)
MainActivity.java
activity_main.xml