У меня есть фрагмент, который имеет квадратную камеру (ширина и высота равна ширине экрана), представленную как FrameLayout в PercentRelativeLayout.Под этой камерой находится ImageView, который делает снимок при нажатии.
Я хотел бы центрировать квадратную камеру вертикально (поскольку она уже покрывает ширину экранов), а затем центрировать ImageView под ней в оставшемся пространстве.Это мой XML:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:id="@+id/llCameraFragment"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#000000">
<android.support.percent.PercentRelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center_vertical">
<FrameLayout
android:id="@+id/tvCamera"
app:layout_widthPercent="100%"
app:layout_aspectRatio="100%" />
</android.support.percent.PercentRelativeLayout>
<LinearLayout
android:id="@+id/llBelowCamera"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:gravity="center">
<ImageView
android:id="@+id/ivCaptureImage"
android:layout_width="100dp"
android:layout_height="100dp"
android:src="@drawable/camerashutter" />
</LinearLayout>
</LinearLayout>
Проблема в том, что вид с камеры (PercentRelativeLayout) всегда начинается с самой верхней части экрана.Я попытался использовать layout_gravity
вместо gravity
в PercentRelativeLayout, а также попытался обернуть его вокруг LinearLayout с гравитацией, установленной в center / center_vertical.
Есть идеи, что может быть не так?Цените любые усилия :)