问题在于textview
,其ID为editTextLabelID
,如下所示。
我正在尝试按如下方式设计布局:label
:editText
我在xml布局中有一个带有绿色背景的Relativelayout
。在其中,有一个textview
应该是我的标签,在水平旁边,应该有一个edittext
问题是,根据以下代码,我收到图像中显示的以下结果。而edittext
虽然在xml布局中位于textview
之前,但却会影响它。如何将textview
和edittext
水平放置在彼此之后?
更新的 XML代码:
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_height="fill_parent"
android:layout_width="fill_parent">
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="horizontal"
android:background="@color/titleBackGroundColor">
<RelativeLayout
android:id="@+id/RelativeLayout00"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_gravity="top|center_horizontal">
<TextView
android:id="@+id/addLocationActivityTitleID"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:gravity="center"
android:textSize="@dimen/titlesTextSize"
android:text="@string/addLocationActivityTitle"
android:textColor="@color/titleColor">
</TextView>
</RelativeLayout>
</LinearLayout>
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical">
<RelativeLayout
android:id="@+id/RelativeLayout01"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/marginTop"
android:background="@color/bodyBackGroundColor">
<TextView
android:id="@+id/editTextLabelID"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:textSize="@dimen/labelsTextSizes"
android:textColor="@color/contentsColor">
</TextView>
<EditText
android:id="@+id/editTextID"
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:layout_toRightOf="@+id/editTextLabelID"
android:layout_alignParentRight="true"
android:layout_alignParentTop="true"
android:ems="10"
android:inputType="text">
</EditText>
</RelativeLayout>
</LinearLayout>
更新的 结果:
答案 0 :(得分:1)
试试这个:
<?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="horizontal">
<RelativeLayout
android:id="@+id/RelativeLayout01"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/marginTop"
android:background="@color/bodyBackGroundColor">
<TextView
android:id="@+id/editTextLabelID"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:textSize="@dimen/labelsTextSizes"
android:textColor="@color/contentsColor">
</TextView>
<EditText
android:id="@+id/editTextID"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_alignParentTop="true"
android:ems="10"
android:inputType="text" >
<requestFocus />
</EditText>
</RelativeLayout>
答案 1 :(得分:0)
您在编辑文本中缺少这三行
android:layout_width="match_parent"
android:layout_toRightOf="@+id/editTextLabelID"
android:layout_alignParentTop="true"
如果你不把它与父母相匹配,它将会非常小 ems值通常不是很好用的
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical">
<RelativeLayout
android:id="@+id/RelativeLayout01"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/marginTop"
android:background="@color/bodyBackGroundColor">
<TextView
android:id="@+id/editTextLabelID"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:textSize="@dimen/labelsTextSizes"
android:textColor="@color/contentsColor">
</TextView>
<EditText
android:id="@+id/editTextID"
android:layout_height="wrap_content"
android:layout_width="match_parent"
android:layout_toRightOf="@+id/editTextLabelID"
android:layout_alignParentTop="true"
android:inputType="text">
</EditText>
</RelativeLayout>
</LinearLayout>
答案 2 :(得分:0)
// try this way,hope this will help you...
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_height="wrap_content"
android:layout_width="match_parent"
android:orientation="vertical"
android:gravity="center">
<TextView
android:id="@+id/addLocationActivityTitleID"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center"
android:textSize="@dimen/titlesTextSize"
android:text="@string/addLocationActivityTitle"
android:textColor="@color/titleColor"/>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@color/bodyBackGroundColor">
<TextView
android:id="@+id/editTextLabelID"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="@dimen/labelsTextSizes"
android:textColor="@color/contentsColor"/>
<EditText
android:id="@+id/editTextID"
android:layout_height="wrap_content"
android:layout_weight="1"
android:layout_width="0dp"
android:ems="10"
android:inputType="text"/>
</LinearLayout>
</LinearLayout>
答案 3 :(得分:0)
在您的代码中,您有许多无用的布局,您可以这样做:
<TextView
android:id="@+id/addLocationActivityTitleID"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center"
android:textSize="@dimen/titlesTextSize"
android:text="@string/addLocationActivityTitle"
android:textColor="@color/titleColor"/>
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="#00ff00">
<TextView
android:id="@+id/editTextLabelID"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="@dimen/labelsTextSizes"
android:layout_alignParentLeft="true"
android:layout_marginLeft="4dp"
android:textColor="@color/contentsColor"/>
<EditText
android:id="@+id/editTextID"
android:layout_height="wrap_content"
android:layout_toRightOf="@+id/editTextLabelID"
android:layout_marginLeft="4dp"
android:layout_alignTop="@+id/editTextLabelID"
android:layout_alignBottom="@+id/editTextLabelID"
android:layout_width="match_parent"
android:ems="10"
android:inputType="text"/>
</RelativeLayout>