我有一个RelativeLayout
,它带有一个名为ZoomieView
的自定义ImageView,它使我可以捏住图像上的图像。我想允许图像扩大屏幕的整个尺寸,因此我将ZoomieView
的宽度和高度设置为match_parent
。现在,我还想向RelativeLayout添加页眉和页脚,以使ZoomieView
位于页眉和页脚之间,如下所示:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/colorBgBlackTintDarkest"
android:id="@+id/full_displayer_master_container"
android:orientation="vertical">
<!-- Submission header -->
<LinearLayout
android:id="@+id/big_display_title_container"
android:layout_width="match_parent"
android:layout_height="50dp"
android:layout_alignParentTop="true"
android:orientation="vertical">
</LinearLayout>
<!-- Image zoom view-->
<com.sometimestwo.moxie.ZoomieView
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:id="@+id/full_displayer_image_zoomie_view"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_gravity="center"/>
<!-- footer -->
<LinearLayout
android:id="@+id/full_display_snack_bar_container"
android:layout_width="match_parent"
android:layout_height="50dp"
android:layout_alignParentBottom="true"
android:background="@drawable/snack_bar_selector"
android:clickable="true"
android:orientation="horizontal">
</LinearLayout>
</RelativeLayout>
如果我的图像较小,则由于图像足够小而无法覆盖页眉/页脚,因此效果很好,但是当我尝试加载较大的图像时,由于我的身高/宽度,页眉和页脚被遮盖了是match_parent。
我需要高度/宽度保持match_parent,但我也不希望在加载视图时覆盖页眉/页脚(如果以后用户放大图片时覆盖了页眉/页脚,那就很好了,虽然)。
有没有一种方法可以调整图像的大小,以使视图加载时ZoomieView
位于页眉和页脚之间的中心,但是当我放大到ZoomieView
时可以遮盖页眉/页脚图片?
将android:layout_below="header"
android:layout_above="footer"
添加到我的ZoomieView
中是行不通的,因为它不允许ZoomieView
放大时扩大整个屏幕尺寸。
这就是我现在所拥有的(不好的):
答案 0 :(得分:0)
更改布局并使用android:layout_weight =“ 0”属性
尝试此希望它将起作用...!
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/colorBgBlackTintDarkest"
android:id="@+id/full_displayer_master_container"
android:orientation="vertical">
<!-- Submission header -->
<LinearLayout
android:id="@+id/big_display_title_container"
android:layout_width="match_parent"
android:layout_height="50dp"
android:layout_alignParentTop="true"
android:layout_weight="0"
android:orientation="vertical">
</LinearLayout>
<!-- Image zoom view-->
<com.sometimestwo.moxie.ZoomieView
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:id="@+id/full_displayer_image_zoomie_view"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_weight="1"
android:layout_gravity="center"/>
<!-- footer -->
<LinearLayout
android:id="@+id/full_display_snack_bar_container"
android:layout_width="match_parent"
android:layout_height="50dp"
android:layout_alignParentBottom="true"
android:background="@drawable/snack_bar_selector"
android:clickable="true"
android:layout_weight="2"
android:orientation="horizontal">
</LinearLayout>
</LinearLayout>
答案 1 :(得分:0)
尝试一下...可能会对您有所帮助。
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/colorBgBlackTintDarkest"
android:id="@+id/full_displayer_master_container"
android:orientation="vertical">
<!-- Submission header -->
<LinearLayout
android:id="@+id/big_display_title_container"
android:layout_width="match_parent"
android:layout_height="50dp"
android:layout_alignParentTop="true"
android:orientation="vertical">
</LinearLayout>
<!-- Image zoom view-->
<com.sometimestwo.moxie.ZoomieView
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:id="@+id/full_displayer_image_zoomie_view"
android:layout_above="@+id/full_display_snack_bar_container" //add this line
android:layout_below="@+id/big_display_title_container" //add this line
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_gravity="center"/>
<!-- footer -->
<LinearLayout
android:id="@+id/full_display_snack_bar_container"
android:layout_width="match_parent"
android:layout_height="50dp"
android:layout_alignParentBottom="true"
android:background="@drawable/snack_bar_selector"
android:clickable="true"
android:orientation="horizontal">
</LinearLayout>