I have a way to make this work. Enable android.support.constraint.Guideline
Now you can place all three elements in the center of the screen and one below the other, as shown in the figure.
Since the images I used are small, they look small and are attached to the top of the screen. But in your case, it will look as expected. All images use both height and width as wrap_content
To align the top and center screen

Below is the xml for the same
<android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" xmlns:app="http://schemas.android.com/apk/res-auto"> <android.support.constraint.Guideline android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/left_guideline" app:layout_constraintGuide_percent=".02" android:orientation="vertical" /> <android.support.constraint.Guideline android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/right_guideline" app:layout_constraintGuide_percent=".98" android:orientation="vertical" /> <ImageView android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/profile" android:id="@+id/iconOne" app:layout_constraintTop_toTopOf="parent" app:layout_constraintLeft_toLeftOf="@+id/left_guideline" app:layout_constraintRight_toRightOf="@+id/right_guideline" /> <ImageView android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/iconTwo" android:src="@drawable/contactus" app:layout_constraintTop_toBottomOf="@id/iconOne" app:layout_constraintLeft_toLeftOf="@+id/left_guideline" app:layout_constraintRight_toRightOf="@+id/right_guideline" /> <ImageView android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/iconThree" android:src="@drawable/pricelist" app:layout_constraintTop_toBottomOf="@id/iconTwo" app:layout_constraintLeft_toLeftOf="@+id/left_guideline" app:layout_constraintRight_toRightOf="@+id/right_guideline" /> </android.support.constraint.ConstraintLayout>
To center to the screen
Now, if you want these three images to be in the center of the screen, then the approach below would be good.

The corresponding xml will be
<android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" xmlns:app="http://schemas.android.com/apk/res-auto"> <android.support.constraint.Guideline android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/left_guideline" app:layout_constraintGuide_percent=".02" android:orientation="vertical" /> <android.support.constraint.Guideline android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/right_guideline" app:layout_constraintGuide_percent=".98" android:orientation="vertical" /> <ImageView android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/profile" android:id="@+id/iconOne" app:layout_constraintBottom_toTopOf="@id/iconTwo" app:layout_constraintLeft_toLeftOf="@+id/left_guideline" app:layout_constraintRight_toRightOf="@+id/right_guideline" /> <ImageView android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/iconTwo" android:src="@drawable/contactus" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toTopOf="parent" /> <ImageView android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/iconThree" android:src="@drawable/pricelist" app:layout_constraintTop_toBottomOf="@id/iconTwo" app:layout_constraintLeft_toLeftOf="@+id/left_guideline" app:layout_constraintRight_toRightOf="@+id/right_guideline" /> </android.support.constraint.ConstraintLayout>
These samples will give us a good start for ConstraintLayout.
Reference One , Link 2 and Link 3
source share