以下是我的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
中的第一项。我需要显示所有这三项。我试图创建一个登录页面
答案 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)。
这是您的代码的问题