如何在android中创建EditText和Textview的中心?

时间:2014-01-20 04:06:55

标签: android xml-layout

我是Android的新手。我的android设计结构有问题。我想在Center中创建TextView,EditText和Button。但是,我无法得到它。请帮我。我希望像那张照片一样发展。

enter image description here

这是我的代码示例。

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
          android:orientation="vertical"
          android:layout_width="fill_parent"
          android:layout_height="fill_parent"
          android:background="@color/isp_pin_maincolor"
          android:paddingTop="10dp"
          android:paddingBottom="10dp"
          android:layout_centerHorizontal="true"
    >
<TextView
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:text="ISP"
        android:textColor="@color/isp_text"
        android:textSize="50dp"
        android:gravity="center"/>

<EditText
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:hint="Enter PIN Code"
        android:id="@+id/editText" android:layout_gravity="center" android:numeric="integer"/>
<Button
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="@string/pin_login"
        android:width="100dp"
        android:gravity="center"
        android:id="@+id/button"/>

</LinearLayout>

当我跑步时,我就是那样的。 enter image description here

出现在顶部。请帮帮我。谢谢你提前!

3 个答案:

答案 0 :(得分:3)

试试这个..

删除此行android:layout_centerHorizontal="true"并为您的主android:gravity="center"

添加android:layout_gravity="center" LinearLayout
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
          android:orientation="vertical"
          android:layout_width="fill_parent"
          android:layout_height="fill_parent"
          android:background="@color/isp_pin_maincolor"
          android:paddingTop="10dp"
          android:paddingBottom="10dp"
          android:gravity="center"
          android:layout_gravity="center"
    >

答案 1 :(得分:2)

将此行android:layout_centerHorizontal="true"替换为android:gravity="center"

你的代码应该是..

<?xml version="1.0" encoding="utf-8"?>
  <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
      android:orientation="vertical"
      android:layout_width="fill_parent"
      android:layout_height="fill_parent"
      android:background="@color/isp_pin_maincolor"
      android:paddingTop="10dp"
      android:paddingBottom="10dp"
      android:gravity="center"
 >
<TextView
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:text="ISP"
    android:textColor="@color/isp_text"
    android:textSize="50dp"
    android:gravity="center"/>

<EditText
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:hint="Enter PIN Code"
    android:id="@+id/editText" android:layout_gravity="center" android:numeric="integer"/>
<Button
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="@string/pin_login"
    android:width="100dp"
    android:gravity="center"
    android:id="@+id/button"/>

</LinearLayout>

答案 2 :(得分:0)

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
          android:orientation="vertical"
          android:layout_width="fill_parent"
          android:paddingTop="15dp"
          android:layout_height="fill_parent"
          android:background="@color/isp_pin_maincolor"
          android:paddingBottom="10dp"
          android:gravity="center"
          android:layout_gravity="center">

试试这个你将能够解决你的问题。