下面的 xml 会根据 API 生成两个不同的布局屏幕。这种布局在具有 API 17 的设备中,布局看起来不错,输入文本集中在屏幕上。
但是在 API 10 上运行的相同布局看起来很奇怪,左上角的字段......
xml代码片段如下:
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#005500">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="15dip"
android:layout_marginRight="15dip"
android:layout_marginTop="200dip"
android:orientation="vertical" >
<EditText
android:id="@+id/et_nome_login"
android:layout_width="match_parent"
android:layout_height="40dip"
android:paddingRight="15dip"
android:paddingLeft="15dip"
android:inputType="text"
android:nextFocusDown="@+id/et_senha_login"
android:background="@drawable/bg_login_name"/>
<EditText
android:id="@+id/et_senha_login"
android:layout_width="match_parent"
android:layout_height="40dip"
android:paddingRight="15dip"
android:paddingLeft="15dip"
android:inputType="textPassword"
android:background="@drawable/bg_login_senha"/>
<ImageButton
android:id="@+id/ib_login"
android:layout_width="match_parent"
android:layout_height="50dip"
android:layout_marginTop="20dip"
android:background="@drawable/btn_entrar"/>
</LinearLayout>
<FrameLayout
android:id="@+id/progress_login"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#AA000000"
android:clickable="true"
android:focusable="true"
android:focusableInTouchMode="true"
android:visibility="gone" >
<ProgressBar
android:layout_width="50dp"
android:layout_height="50dp"
android:focusable="true"
android:focusableInTouchMode="true"
android:layout_gravity="center" />
</FrameLayout>
</FrameLayout>
在 API 10 上,视图放置在左上角,而在 API 17 上,字段被更正后放置在中心。问题出在哪里?