Проблема макета на Android с FrameLayout и ScrollView - PullRequest
1 голос
/ 01 января 2012

Я пытаюсь разделить экран на 2 области, слева ImageView и справа ScrolView.Я добавляю ImageView и содержимое ScrollView программно, поэтому XML-файл макета выглядит следующим образом:

<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    >
    <FrameLayout
            android:id="@+id/scene_view"
            android:layout_width="fill_parent"
            android:layout_height="fill_parent"
            android:layout_gravity="left"
            >
    </FrameLayout>
    <ScrollView
            android:layout_height="fill_parent"
            android:layout_width="@dimen/scrollmenu_width"
            android:layout_gravity="right"
            >
        <LinearLayout
                android:id="@+id/scrollmenu"
                android:layout_height="fill_parent"
                android:orientation="vertical"
                android:layout_width="fill_parent"
                >
        </LinearLayout>
    </ScrollView>
</FrameLayout>

Что я делаю не так?потому что я получаю ScrollView вправо, но ImageView по центру (относительно экрана), расположенной слева от экрана.Разрешение изображения превышает разрешение экрана, поэтому я получаю черный sp

1 Ответ

2 голосов
/ 01 января 2012

Я думаю, вам следует использовать параметры LinearLayout и weight для решения этой проблемы.

Я отредактировал ваш фрагмент, чтобы дать вам представление о том, как его использовать.

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

    <FrameLayout
        android:id="@+id/scene_view"
        android:layout_width="0dp"
        android:layout_height="fill_parent"
        android:layout_gravity="left"
        android:layout_weight=1>
    </FrameLayout>
    <ScrollView
        android:layout_height="fill_parent"
        android:layout_width="0dp"
        android:layout_weight=1
        android:layout_gravity="right">
        <LinearLayout
            android:id="@+id/scrollmenu"
            android:layout_height="fill_parent"
            android:orientation="vertical"
            android:layout_width="fill_parent">
        </LinearLayout>
    </ScrollView>
</FrameLayout>

Надеюсь, это поможет ..

...