ScrollView не показывает

1

при использовании макета, показанного ниже, ScrollView не отображается, а если я удалю RelativeLayout только в дереве (@id/top_bar), это покажет. Кто-нибудь может объяснить, почему?

спасибо

июль

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/item_detail" android:layout_width="fill_parent"
    android:layout_height="fill_parent">

    <RelativeLayout android:id="@+id/top_bar"
        android:layout_width="fill_parent" android:layout_height="44dp"
        android:background="@drawable/nav_bar">
        <ImageButton android:id="@+id/btn_map"
            android:layout_width="34dp" android:layout_height="34dp"
            android:src="@drawable/btn_map"
            android:layout_centerVertical="true"
            android:layout_alignParentRight="true"
            android:layout_marginRight="10dp" />
        <TextView android:id="@+id/top_bar_title"
            android:layout_width="200dp" android:layout_height="wrap_content"
            android:layout_centerVertical="true" android:gravity="center"
            android:textSize="16sp" android:textColor="#FFFFFF"
            android:textStyle="bold" android:layout_marginLeft="60dp" />
    </RelativeLayout>

    <ScrollView android:layout_width="fill_parent"
        android:layout_height="wrap_content">

        <LinearLayout android:layout_width="fill_parent"
            android:layout_height="200dp">
            <RelativeLayout android:layout_width="fill_parent"
                android:layout_height="200dp">
                <ViewFlipper android:id="@+id/itemdetail_gallery"
                    android:layout_width="fill_parent"
                    android:layout_height="fill_parent">

                </ViewFlipper>
                <RelativeLayout android:layout_width="fill_parent"
                    android:layout_height="fill_parent">
                    <ImageView android:id="@+id/btn_gallery_prev"
                        android:layout_alignParentLeft="true"
                        android:layout_centerVertical="true"
                        android:src="@drawable/bg_diapo_left"
                        android:layout_marginLeft="5dp"
                        android:layout_width="30dp"
                        android:layout_height="50dp" android:visibility="gone" />
                    <ImageView android:id="@+id/btn_gallery_next"
                        android:layout_alignParentRight="true"
                        android:layout_centerVertical="true"
                        android:src="@drawable/bg_diapo_right"
                        android:layout_marginRight="5dp"
                        android:layout_width="30dp"
                        android:layout_height="50dp" android:visibility="gone" />
                    <TextView android:id="@+id/btn_gallery_ind"
                        android:layout_alignParentTop="true"
                        android:layout_alignParentRight="true"
                        android:layout_marginTop="5dp"
                        android:layout_marginRight="5dp"
                        android:background="@drawable/bg_diapo_ind"
                        android:gravity="center" android:layout_width="30dp"
                        android:layout_height="20dp" android:visibility="gone" />
                </RelativeLayout>
            </RelativeLayout>
        </LinearLayout>
    </ScrollView>

</LinearLayout>
Теги:
scrollview

1 ответ

3
Лучший ответ

Ориентация по умолчанию для LinearLayout горизонтальная. ScrollView помещается рядом с RelativeLayout. Поскольку у вас android:layout_width="fill_parent", ваш ScrollView никогда не отображается. Если вы хотите, чтобы ваш макет был вертикальным, вам нужно установить так же. Попробуйте установить android:orientation="vertical" в LinearLayout.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню