2013-11-27 3 views
0

Я использую следующий код XML для планшетов в текущем уровне API 17.Android LinearLayout изменения на поворот экрана

<?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:orientation="vertical" 
android:layout_gravity="center" > 

<LinearLayout 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:orientation="horizontal" 
    android:layout_gravity="center_horizontal" 
    android:padding="40dp" > 

    <EditText 
     android:id="@+id/etUsername" 
     android:layout_width="wrap_content" 
     android:layout_gravity="center" 
     android:layout_height="wrap_content" 
     android:layout_weight="1" 
     android:ems="10"    
     android:inputType="text" > 
    </EditText> 

    <TextView 
     android:id="@+id/tvUsername" 
     android:layout_width="wrap_content" 
     android:layout_gravity="center" 
     android:layout_height="wrap_content" 
     android:layout_weight="1" 
     android:text="User Name" /> 
</LinearLayout> 

<LinearLayout 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:orientation="horizontal" 
    android:layout_gravity="center_horizontal"  
    android:padding="40dp" > 

    <EditText 
     android:id="@+id/etPassword" 
     android:layout_width="wrap_content" 
     android:layout_gravity="center" 
     android:layout_height="wrap_content" 
     android:layout_weight="1" 
     android:ems="10" 
     android:inputType="textPassword" /> 

    <TextView 
     android:id="@+id/tvPassword" 
     android:layout_width="wrap_content" 
     android:layout_gravity="center" 
     android:layout_height="wrap_content" 
     android:layout_weight="1" 
     android:text="Password" /> 
</LinearLayout> 

<Button 
    android:id="@+id/submitbutton" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_gravity="center" 
    android:background="@drawable/buttonpressing" 
    android:text="Submit" 

    /> 


<TextView 
    android:id="@+id/showresult" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:text="" 
    android:layout_gravity="center" /> 

Я хочу, чтобы мой TextView, EditText и кнопку, чтобы быть в центре. В ландшафтном представлении (по горизонтали) они выглядят центрированными, но в вертикальном (вертикальном) экране они находятся в центре в верхней части экрана. Как я это исправлю, независимо от того, какой вид это, все они остаются в центре экрана?

ответ

1

Проблема заключается в том, что вы установили высоту макета корня к «match_parent»

<?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="wrap_content" 
android:orientation="vertical" 
android:layout_gravity="center"> 

<LinearLayout 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:orientation="horizontal" 
    android:layout_gravity="center_horizontal" 
    android:padding="40dp"> 

    <EditText 
     android:id="@+id/etUsername" 
     android:layout_width="wrap_content" 
     android:layout_gravity="center" 
     android:layout_height="wrap_content" 
     android:layout_weight="1" 
     android:ems="10" 
     android:inputType="text"></EditText> 

    <TextView 
     android:id="@+id/tvUsername" 
     android:layout_width="wrap_content" 
     android:layout_gravity="center" 
     android:layout_height="wrap_content" 
     android:layout_weight="1" 
     android:text="User Name" /> 
</LinearLayout> 

<LinearLayout 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:orientation="horizontal" 
    android:layout_gravity="center_horizontal" 
    android:padding="40dp"> 

    <EditText 
     android:id="@+id/etPassword" 
     android:layout_width="wrap_content" 
     android:layout_gravity="center" 
     android:layout_height="wrap_content" 
     android:layout_weight="1" 
     android:ems="10" 
     android:inputType="textPassword" /> 

    <TextView 
     android:id="@+id/tvPassword" 
     android:layout_width="wrap_content" 
     android:layout_gravity="center" 
     android:layout_height="wrap_content" 
     android:layout_weight="1" 
     android:text="Password" /> 
</LinearLayout> 

<Button 
    android:id="@+id/submitbutton" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_gravity="center" 
    android:text="Submit" 
    /> 


<TextView 
    android:id="@+id/showresult" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:text="" 
    android:layout_gravity="center" /> 
</LinearLayout> 
Смежные вопросы