在Android布局XML中的EditText元素之前放置TextView会导致EditText无法显示

时间:2010-07-29 16:01:10

标签: java android xml android-widget

正如标题所说,每次我在LinearLayout中的EditText元素之前放置TextView时,EditText都不会显示。当我不这样做时,确实如此。

我已将问题缩小到TextView的layout_width属性。如果我给它“wrap_content”,它可以工作,但不会“阻塞”,它与EditText出现在同一行。

 <?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:background="#FFFFFFFF"
  >

<TextView
    android:text="Test"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    />


  <EditText 
            android:id="@+id/marketValLow"
            android:layout_width="fill_parent"
            android:layout_height="35px"
            android:singleLine="true"
            android:layout_marginLeft="5px"
            android:layout_marginRight="5px"
            android:layout_marginTop="5px" /> 


</LinearLayout>

有什么想法吗?谢谢!

3 个答案:

答案 0 :(得分:2)

听起来像是在垂直方向之后将TextView置于EditView上方。 LinearLayout默认为水平。

因此,请将android:orientation="vertical"添加到LinearLayout定义中。

答案 1 :(得分:1)

替换这个:

 android:layout_width="fill_parent"

通过

 android:layout_width="wrap_content"

答案 2 :(得分:1)

Use relativeLayout and place each child side by side using id's

Example:
<RelativeLayout .... >

<TextView
  android:id="+@id/text"
  android:layout_width="wrap_content"
  android:layout_height="wrap_content"
  android:text="Enter text here:"
 />

 <EditText
  android:id="+@id/edit"
  android:layout_width="wrap_content"
  android:layout_height="wrap_content"
  android:layout_toRightOf="@id/text"
 />