编辑未列出的android中的文本字段

时间:2013-03-05 08:52:02

标签: android android-layout

以下是我的xml文件:

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

<EditText
    android:id="@+id/username"
    android:layout_width="200dp"
    android:layout_height="40dp"
    android:layout_marginLeft="100dp"
    android:layout_marginTop="250dp"
    android:hint="Username" />

<EditText
    android:id="@+id/password"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"

    android:layout_marginLeft="100dp"
    android:layout_marginTop="300dp"

    android:hint="Password"
    android:inputType="textPassword" />

<TextView
    android:id="@+id/login_title"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_marginLeft="150dp"
    android:layout_marginTop="200dp"
    android:text="@string/login_title" />

 </LinearLayout>

使用此xml仅显示第一项。如果我更改了订单,则会显示layout中的第一项。我需要显示所有这三项。我试图创建一个登录页面

4 个答案:

答案 0 :(得分:1)

wrap_content替换为fill_parent

 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="vertical" >

而你的marginTop太高了。我建议降低这个值。

答案 1 :(得分:0)

尝试删除边距值。并查看是否出现多个视图。也许有些观点不在屏幕之外?边距的值非常大。

答案 2 :(得分:0)

尝试使用此代码。

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    >

    <LinearLayout
        android:layout_width="fill_parent"
        android:layout_centerInParent="true"
      android:gravity="center_vertical|center_horizontal"
        android:layout_height="wrap_content"
        android:orientation="vertical"
        >

        <EditText
            android:id="@+id/username"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content" 
            android:hint="Username" />

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

        <TextView
            android:id="@+id/login_title"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"           
            android:text="login_title" />
    </LinearLayout>

</RelativeLayout>

答案 3 :(得分:0)

在您的代码中,您提供的边距太大而且它们不在屏幕上。

尝试申请少量保证金

这是我的代码:

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

<EditText
android:id="@+id/username"
android:layout_width="200dp"
android:layout_height="40dp"
android:layout_marginLeft="100dp"
android:layout_marginTop="50dp"
android:hint="Username" />

<EditText
android:id="@+id/password"
android:layout_width="wrap_content"
android:layout_height="wrap_content"

android:layout_marginLeft="100dp"
android:layout_marginTop="10dp"

android:hint="Password"
android:inputType="textPassword" />

<TextView
android:id="@+id/login_title"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="150dp"
android:layout_marginTop="10dp"
android:text="login" />

</LinearLayout>

这里需要注意的是,当您使用具有垂直方向的线性布局时,marginTop的值将从前一个控件中考虑,而不是从窗口顶部开始,

在指定

android:layout_marginTop="300dp" 

对于密码字段,它将进入屏幕的可见区域(即用户名edittext的300dp)。

这是您的代码的问题