Android: размещение ImageView при перекрытии между макетами

Я пытаюсь разместить ImageView в точке перекрытия между двумя макетами. На рисунке ниже моя цель состояла бы в том, чтобы поместить ImageView в белый квадрат. ПРИМЕЧАНИЕ. Точка перекрытия не обязательно должна быть центрирована по вертикали, как показано ниже

Введите описание изображения здесь

Возможно ли это в XML?

Мое единственное предположение прямо сейчас – сделать это в самом коде.

EDIT 8/3/2016: Для справки, я думаю, ConstraintLayouts может стать лучшим решением для решения этих проблем http://tools.android.com/tech-docs/layout-editor

Это будет делать то, что вы хотите, либо с изображением фиксированной высоты, либо рассчитанным программно.

 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" > <RelativeLayout android:id="@+id/layoutTop" android:layout_width="match_parent" android:layout_height="200dp" > </RelativeLayout> <RelativeLayout android:id="@+id/layoutBottom" android:layout_width="match_parent" android:layout_height="0dp" android:layout_alignParentBottom="true" android:layout_below="@id/layoutTop" > </RelativeLayout> <ImageView android:id="@+id/overlapImage" android:layout_width="wrap_content" android:layout_height="40dp" android:layout_above="@id/layoutBottom" android:layout_centerHorizontal="true" android:layout_marginBottom="-20dp" <!-- This should be always half the height, can also be calculated and added programtically --> android:adjustViewBounds="true" android:src="@drawable/ic_launcher" /> </RelativeLayout> 

Попробуйте этот путь, надеюсь, что это поможет вам решить вашу проблему.

 <FrameLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical"> <LinearLayout android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical"> <LinearLayout android:layout_width="match_parent" android:layout_height="0dp" android:layout_weight="1"> </LinearLayout> <LinearLayout android:layout_width="match_parent" android:layout_height="0dp" android:layout_weight="1"> </LinearLayout> </LinearLayout> <ImageView android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/ic_launcher" android:adjustViewBounds="true" android:layout_gravity="center"/> </FrameLayout>