Android没有在横向模式下自行扩展布局

时间:2012-02-14 14:17:09

标签: android android-layout

我正在尝试以横向模式放置两个图像,因为我的应用程序将以横向模式完成。当我这样做以下代码时,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 :(得分:0)

如果您希望自己的应用始终处于横向模式,请将其设置为清单文件,如下所示:

<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();

然后您可以使用此显示宽度来设置图像的宽度(即宽度/ 2)。

答案 1 :(得分:0)

你可能需要在你的ImageViews上使用android:scaleType =“fitCenter”。