Android: почему мой вид заполняет весь экран, а кнопки внизу не отображаются - PullRequest
1 голос
/ 15 марта 2011

Как мне запретить моему представлению заполнять весь экран и не показывать мои кнопки внизу экрана?

<?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>

Когда я изменяю свой код и ставлю кнопки сверху, это работаетхорошо.Я пробовал относительные макеты, линейные макеты, веса lauout, ...

Что я делаю не так?

Ответы [ 4 ]

1 голос
/ 15 марта 2011

RelativeLayout может быть сложно работать.Я пытаюсь придерживаться FrameLayout и LinearLayout.Вот эскиз макета, который я бы использовал в вашем случае:

<LinearLayout orientation="vertical">
    <ImageZoomView layout_weight="1" layout_height="wrap_content">
    <LinearLayout orientation="horizontal" layout_height="wrap_content">
        ... buttons ...
    </LinearLayout>
</LinearLayout>

Высота и ширина fill_parent, если не указаноАтрибут layout_weight на ImageZoomView заставит его расширяться настолько далеко, насколько это возможно, не нажимая нижние кнопки.

0 голосов
/ 15 марта 2011

Изменить это:

   <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
   android:layout_width="fill_parent"
   android:layout_height="fill_parent"> 

к этому:

   <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
   android:layout_width="fill_parent"
   android:layout_height="wrap_content"> 
0 голосов
/ 15 марта 2011

Вместо размещения android: layout_below в вашем LinearLayout. Попробуйте удалить это и поставить

android:layout_above="@+id/myLinearLayout"

внутри вашего ImageZoomView. Конечно, присвоив вашему LinearLayout тот же идентификатор.

0 голосов
/ 15 марта 2011

Возможно, layout_weight вызывает проблемы? Также не похоже, что вы даете предметам объект, который нужно расположить относительно?

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