Textviews远离edittext android

时间:2011-08-07 20:05:52

标签: android xml

我不知道为什么Username:和Password:与edittext表单相距甚远。有人可以帮我解决这个问题吗?

      <RelativeLayout
  xmlns:android="http://schemas.android.com/apk/res/android"
  android:orientation="vertical"
  android:layout_width="wrap_content"
  android:layout_height="wrap_content"
  >

  <TableLayout
  android:layout_width="fill_parent"
  android:layout_height="fill_parent"
  >

  <TableRow
  android:layout_gravity="center"
  android:gravity="center"
  android:layout_marginTop="10dp"
  >

   <TextView 
   android:text="Username : "
   android:layout_width="wrap_content"
   android:layout_height="wrap_content"
   android:id="@+id/userset"
   style="@style/regFont"
   />

   <EditText
   android:id="@+id/versionuser"
   android:layout_height="wrap_content"
   android:layout_width="200dp"
   android:layout_toRightOf="@id/userset">
   <requestFocus>
   </requestFocus>
   </EditText>

   </TableRow>

   <TableRow
   android:layout_gravity="center"
   android:gravity="center"
   android:layout_marginTop="5dp"
   >

   <TextView 
   android:text="Password : "
   android:layout_width="wrap_content"
   android:layout_height="wrap_content"
   android:id="@+id/passset"
   style="@style/regFont"
   />

   <EditText
   android:id="@+id/versionpass"
   android:layout_height="wrap_content"
   android:layout_width="200dp"
   android:layout_marginTop="5dp"
   android:layout_toRightOf="@id/passset"
   android:inputType="textPassword">
   </EditText>
   </TableRow>

   <TableRow
   android:layout_gravity="center"
   android:gravity="center"
   android:layout_marginTop="5dp"
   >

   <CheckBox
   android:text="Automatic Login"
   android:id="@+id/cbauto"
   android:layout_width="wrap_content"
   android:layout_height="wrap_content">
   </CheckBox>

   </TableRow>

   </TableLayout>

   </RelativeLayout>

1 个答案:

答案 0 :(得分:1)

这是因为您的CheckBox使用TableLayout的第一行。因此,您的TextView将使用与CheckBox相同的大小。

你应该尝试为CheckBox项创建一个单独的TableLayout,这样它就不会占用早期TableRows的宽度,然后将两个TableLayout放入一个封闭的LinearLayout中,如下所示:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
  xmlns:android="http://schemas.android.com/apk/res/android"
  android:layout_width="match_parent"
  android:layout_height="match_parent" android:orientation="vertical">

  <TableLayout
  android:layout_width="fill_parent"
  android:layout_height="wrap_content"
  >

  <TableRow
  android:layout_width="fill_parent"
   android:layout_height="wrap_content"
  android:layout_gravity="left"
  android:gravity="left"
  android:layout_marginTop="10dp"
  >

   <TextView 
   android:text="Username : "
   android:layout_width="wrap_content"
   android:layout_height="wrap_content"
   android:id="@+id/userset"
   />

   <EditText
   android:id="@+id/versionuser"
   android:layout_height="wrap_content"
   android:layout_width="200dp"
   android:layout_toRightOf="@id/userset">
   <requestFocus>
   </requestFocus>
   </EditText>

   </TableRow>

   <TableRow
   android:layout_width="fill_parent"
   android:layout_height="wrap_content"
   android:layout_gravity="left"
   android:gravity="left"
   android:layout_marginTop="5dp"
   >

   <TextView 
   android:text="Password : "
   android:layout_width="wrap_content"
   android:layout_height="wrap_content"
   android:id="@+id/passset"
   />

   <EditText
   android:id="@+id/versionpass"
   android:layout_height="wrap_content"
   android:layout_width="200dp"
   android:layout_marginTop="5dp"
   android:layout_toRightOf="@id/passset"
   android:inputType="textPassword">
   </EditText>
   </TableRow>

   </TableLayout>
  <TableLayout android:layout_marginTop="5dp" android:gravity="left" android:layout_height="wrap_content" android:layout_width="fill_parent">
      <CheckBox android:layout_width="wrap_content" android:text="Automatic Login" android:layout_height="wrap_content" android:id="@+id/cbauto"></CheckBox>
  </TableLayout>

</LinearLayout>