以下是我的布局。我希望EditText位于布局之上,我希望VideoView垂直居中。 EditText显示正常但我看到我的VideoView在EditText下面对齐(不是垂直居中)。但是,如果我删除了android:layout_below="@+id/caption"
,那么我的VideoView会垂直居中,但如果视频的高度较大,那么它将会出现在EditText之上,而我并不想要这样。如何调整VideoView,使其垂直居中并位于EditText下方?
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent" android:layout_height="match_parent"
android:padding="5dp"
android:background="#FFFFFF"
>
<EditText
android:id="@+id/caption"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_margin="5dp"
android:maxLength="100"
android:hint="Hello"/>
<VideoView
android:id="@+id/previewvideo"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_centerVertical="true"
android:layout_below="@+id/caption"
/>
</RelativeLayout>
答案 0 :(得分:0)
请查看下面对您有帮助的代码
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent" >
<EditText
android:id="@+id/editText1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true"
android:ems="10" >
<requestFocus />
</EditText>
<VideoView
android:id="@+id/videoView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/editText1"
android:layout_centerHorizontal="true"
android:layout_marginTop="5dp" />
答案 1 :(得分:0)
使用LinearLayout
作为根ViewGroup
,并为layout_gravity
指定垂直VideoView
的{{1}}。这将在布局中按顺序将项目从上到下放置。
orientation
答案 2 :(得分:0)
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent" android:layout_height="match_parent"
android:padding="5dp"
android:background="#FFFFFF">
<EditText
android:id="@+id/caption"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_margin="5dp"
android:maxLength="100"
android:hint="Hello"/>
<VideoView
android:id="@+id/previewvideo"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:layout_below="@+id/caption"/>
</RelativeLayout>
答案 3 :(得分:0)
添加layout_below
会使layout_centerVertical
无效。而是使EditText
使用android:layout_above="@+id/previewvideo"
并删除VideoView上的layout_below
。
你可能需要稍微调整一下,但这应该可以让你开始。