Android -根据设备方向调整布局



这是我的布局。但是当我改变设备方向时,虽然我在布局中使用dp,但我没有得到正确的布局。

 <?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:background="#F2F2F2"
    android:orientation="vertical" >
    <ImageView
        android:layout_width="wrap_content"
        android:layout_height="90dp" />
    <TableLayout
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" >
        <TableRow
            android:layout_width="wrap_content"
            android:layout_height="wrap_content" >
            <TextView
                android:id="@+id/username"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="@string/Username"
                android:textColor="#000000" >
            </TextView>
            <EditText
                android:id="@+id/editname"
                android:layout_width="230dp"
                android:layout_height="wrap_content" >
            </EditText>
        </TableRow>
        <TableRow
            android:layout_width="wrap_content"
            android:layout_height="wrap_content" >
            <TextView
                android:id="@+id/password"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="@string/Password"
                android:textColor="#000000" >
            </TextView>
            <EditText
                android:id="@+id/editpassword"
                android:layout_width="230dp"
                android:layout_height="wrap_content"
                android:password="true" >
            </EditText>
        </TableRow>
    </TableLayout>
    <LinearLayout
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" >
        <CheckBox
            android:id="@+id/cb"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content" />
        <TextView
            android:id="@+id/label"
            android:text="@string/RememberMe"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:textColor="#111111"
            android:textStyle="bold"
             >
        </TextView>
    </LinearLayout>
    <Button
        android:id="@+id/login"
        android:layout_width="80dp"
        android:layout_height="wrap_content"
        android:layout_gravity="center"
        android:text="@string/Login"
        android:textColor="#000000"
        android:textStyle="bold" />
    <TextView
        android:id="@+id/newuser"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center"
        android:clickable="true"
        android:drawableLeft="@drawable/signin"
        android:paddingTop="10dp"
        android:text="@string/NotRegistered"
        android:textColor="#000000"
        android:textStyle="bold" >
    </TextView>
    <TextView
        android:id="@+id/forgtpasswd"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center"
        android:clickable="true"
        android:drawableLeft="@drawable/forgot_password_white_key"
        android:paddingTop="10dp"
        android:paddingBottom="51dp"
        android:text="@string/ForgotPassword"
        android:textColor="#000000"
        android:textStyle="bold" >
    </TextView>
    <ProgressBar
            android:id="@+id/progressbar_Horizontal"
            style="?android:attr/progressBarStyleHorizontal"
            android:layout_width="fill_parent"
            android:layout_height="12dp"
            android:max="100" />
</LinearLayout>

我想根据设备的当前方向改变这个布局。我该怎么做呢?任何帮助都将不胜感激!!

我想你可以找到关于这个话题的很好的讨论,这对你有帮助。例如:http://groups.google.com/group/android-developers/browse_thread/thread/a640da2a01bdfde5?pli=1 .

我认为对你来说重要的是:

将纵向的设置为res/layout。把风景画放进去res/layout-land。将它们命名为相同(例如,main.xml)。

resource文件夹中创建不同大小的布局,如Layout_large, Layout_large_land,…

最新更新