问题是:我有一个TextView和一个EditText,如何将它们放在同一个“级别”?
http://postimage.org/image/o9l17a3zv/
如您所见,我想将“用户名”放在EditText的同一级别上......
这是我的代码:
<TextView
android:id="@+id/account_creation"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="@string/account_creation"
android:textSize="20sp"
android:textStyle="bold" />
<!-- Username -->
<TextView
android:id="@+id/username_registration"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_below="@id/account_creation"
android:layout_toLeftOf="@+id/username_new_account"
android:text="@string/user_text"
android:textSize="15sp" />
<EditText
android:id="@+id/username_new_account"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@id/account_creation"
android:layout_alignParentRight="true"
android:ems="10"
android:hint="@string/user_editext" >
<requestFocus />
</EditText>
我想在两者上加上相同的“身高”值,但我不知道这是不是正确/更好的方式......
答案 0 :(得分:3)
文本视图和编辑文本在同一行中触及父母布局的底线 试试这个。
android:layout_alignBottom="@+id/editText1"
这肯定会帮到你。
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/parentView"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >
<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBottom="@+id/editText1"
android:text="TextView" />
<EditText
android:id="@+id/editText1"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_toRightOf="@+id/textView1"
android:ems="10" >
<requestFocus />
</EditText>
</RelativeLayout>
感谢。
答案 1 :(得分:0)
android:gravity="center"
是解决方案
答案 2 :(得分:0)
使用android:layout_toRightOf
或android:layout_toLeftOf
属性,不包括相对布局
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent" >
<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:text="TextView" />
<EditText
android:id="@+id/editText1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true" android:layout_toRightOf="@+id/textView1">
<requestFocus />
</EditText>
</RelativeLayout>
答案 3 :(得分:0)
试试这个
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent" >
<TextView
android:id="@+id/account_creation"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="account_creation"
android:textSize="20sp"
android:textStyle="bold" />
<RelativeLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_below="@+id/account_creation" >
<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:text="user_text" />
<EditText
android:id="@+id/editText1"
android:hint="Enter_username"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_toRightOf="@+id/textView1" >
</EditText>
</RelativeLayout>
</RelativeLayout>
答案 4 :(得分:0)
您必须将文本置于TextView小部件中心,只需在TextView xml声明中使用android属性android:gravity
。
如果您希望文本垂直和水平居中,请使用:
android:gravity="center"
如果您希望文本仅水平居中,请使用:
android:gravity="center_horizontal"