Android не растягивает макет самостоятельно в ландшафтном режиме - PullRequest
1 голос
/ 14 февраля 2012

Я пытаюсь разместить два изображения в ландшафтном режиме, поскольку мое приложение будет работать в горизонтальном режиме. Когда я делаю это, следующий код Android работает должным образом в режиме Potrait, но в ландшафтном режиме он растягивается с соотношением, но они остаются неизменными. Что я должен сделать, чтобы он справился с Android

<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/frameLayout1"
        android:layout_width="wrap_content"
        android:layout_height="match_parent"
        android:fitsSystemWindows="true"
        android:layout_gravity="center_horizontal" >

        <ImageView
            android:id="@+id/imageView1"
            android:layout_width="fill_parent"
            android:layout_height="fill_parent"

            android:src="@drawable/hud" />


    </FrameLayout>

    <FrameLayout
        android:id="@+id/frameLayout2"
        android:layout_width="wrap_content"
        android:layout_height="match_parent" 
        android:fitsSystemWindows="true"
        android:layout_gravity="center_horizontal">

        <ImageView
            android:id="@+id/imageView2"
            android:layout_width="fill_parent"
            android:layout_height="fill_parent"
            android:layout_gravity="center_horizontal"
            android:src="@drawable/bg" />


    </FrameLayout>

</LinearLayout>

Ответы [ 2 ]

0 голосов
/ 03 декабря 2014

Возможно, вам нужен android: scaleType = "fitCenter" в ваших ImageViews.

0 голосов
/ 14 февраля 2012

Если вы хотите, чтобы ваше приложение всегда находилось в ландшафтном режиме, установите его в файле манифеста следующим образом:

<activity android:screenOrientation="landscape">

Затем вместо использования XML для создания макета сделайте это из упражнения. Затем вы можете использовать этот код для получения информации о размере дисплея:

/* First, get the Display from the WindowManager */
Display display = ((WindowManager) getSystemService(WINDOW_SERVICE)).getDefaultDisplay();

/* Now we can retrieve all display-related infos */
int width = display.getWidth();

Затем вы можете использовать эту ширину экрана, чтобы установить ширину ваших изображений (то есть width / 2).

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