How do I stop my view from filling the entire screen and not showing my buttons at the bottom of the screen?
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent"
android:layout_height="fill_parent">
<com.vig.comix.ImageZoomView
android:id="@+id/zoomview"
android:layout_width="fill_parent"
android:layout_height="wrap_content" android:layout_alignParentTop="true" />
<LinearLayout android:orientation="horizontal"
android:layout_width="fill_parent"
android:layout_height="wrap_content" android:layout_below="@+id/zoomview" android:layout_alignParentBottom="true">
<ImageButton android:id="@+id/btnPrev"
android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@android:drawable/ic_media_rew"
android:background="@null"
android:layout_weight="1"
android:width="0px" />
<ImageButton android:id="@+id/btnNext"
android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@android:drawable/ic_media_ff"
android:background="@null"
android:layout_weight="1"
android:width="0px" />
<ImageButton android:id="@+id/btnMove"
android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@android:drawable/btn_star"
android:background="@null"
android:layout_weight="1"
android:width="0px" />
<ImageButton android:id="@+id/btnDelete"
android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@android:drawable/ic_menu_delete"
android:background="@null"
android:layout_weight="1"
android:width="0px" />
</LinearLayout>
</RelativeLayout>
When I change my code and put the buttons at the top, it works fine. I have tried relative layouts, linear layouts, lauout weights, ...
What am I doing wrong?
RelativeLayout
can be tricky to work with. I try to stick with FrameLayout
and LinearLayout
. Here is a sketch of the layout I would use in your case:
<LinearLayout orientation="vertical">
<ImageZoomView layout_weight="1" layout_height="wrap_content">
<LinearLayout orientation="horizontal" layout_height="wrap_content">
... buttons ...
</LinearLayout>
</LinearLayout>
Heights and widths are fill_parent
when not mentioned. The layout_weight
attribute on the ImageZoomView
will cause it to expand as far as it can without squishing your bottom buttons.
Perhaps the layout_weight is causing issues? Also it doesn't seem like you're give the items an object to be positioned relative to?
Change this:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
to this:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="wrap_content">
Instead of putting android:layout_below in your LinearLayout. Try removing that and put
android:layout_above="@+id/myLinearLayout"
inside your ImageZoomView. Of course giving your LinearLayout the same id.
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.