EditText框未显示

时间:2012-02-06 07:04:10

标签: android view android-edittext

我正在尝试制作一个简单的Android应用程序。我使用Android版本2.3.3。我使用以下代码在我的xml文件中显示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="#FFFFFF"
    android:orientation="vertical" >

    <LinearLayout
        android:id="@+id/ll1"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:orientation="horizontal" >

        <TextView
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:text="@string/username"
            android:textColor="#000000" />

        <EditText
            android:id="@+id/username"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:inputType="text"
            android:text="" >

            <requestFocus />
        </EditText>
    </LinearLayout>

    <LinearLayout
        android:id="@+id/ll2"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:orientation="horizontal" >

        <TextView
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:text="@string/password"
            android:textColor="#000000" />

        <EditText
            android:id="@+id/password"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:inputType="textPassword" />
    </LinearLayout>

    <LinearLayout
        android:id="@+id/ll3"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:orientation="horizontal" >

        <CheckBox
            android:id="@+id/remember_me"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="@string/remember_me"
            android:textColor="#000000" />
    </LinearLayout>

    <LinearLayout
        android:id="@+id/ll4"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:orientation="horizontal" >

        <Button

            android:id="@+id/signInButton"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="@string/signIn" >
        </Button>
    </LinearLayout>

    <LinearLayout
        android:id="@+id/ll5"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:orientation="horizontal" >
        <TextView
            android:id="@+id/forgot_password"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:text="@string/forgot_password"
            android:textColor="#000000" />
    </LinearLayout>

    <LinearLayout
        android:id="@+id/ll6"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:orientation="horizontal" >

        <Button
            android:id="@+id/createAccountButton"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="@string/create_account" >
        </Button>
    </LinearLayout>

但是没有显示EditText。所有其他按钮,文本视图和所有内容都正确显示,仅显示EditText。谁能告诉我这是什么问题? - 提前谢谢

3 个答案:

答案 0 :(得分:4)

请使用此

<?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="wrap_content"
    android:orientation="horizontal" >

<TextView
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"

    android:text="Name"
    android:textColor="#ffffff" />

<EditText   android:layout_weight="1"
    android:id="@+id/username"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:inputType="text"
    android:text="" >

    <requestFocus />
</EditText>

答案 1 :(得分:0)

为TextView提供id并将EditText放在TextView

下面
<TextView
android:id="@+id/testview1"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:text="@string/username"
    android:textColor="#000000" />

<EditText
    android:id="@+id/username"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
android:layout_below="@id/textview1"
    android:text=""
    android:inputType="text" >

答案 2 :(得分:0)

它发生b'coz的textview有width属性作为填充父/匹配父,所以textview填充(宽度)屏幕,然后编辑文本走出可见区域。按照以下方法之一解决这个问题。

  1. 将textview宽度设置为 wrap_content或固定宽度(ex 50dp)。如果您使用wrap_content,那么根据文本视图中的文本再次编辑文本可能会超出可见区域。

  2. 文本视图和编辑文本的宽度设置为 layout_width =“match_parent”,然后添加一个属性 layout_weight =“1”。现在文本视图和编辑文本都共享共享父级的宽度。

        <TextView
            android:layout_width="match_parent" layout_weight="1"
            android:layout_height="wrap_content"
            android:text="@string/username"
            android:textColor="#000000" />
    
        <EditText
            android:id="@+id/username"
            android:layout_width="match_parent" layout_weight="1"
            android:layout_height="wrap_content"
            android:inputType="text"
            android:text="" >
    
            <requestFocus />
        </EditText>
    </LinearLayout>