Android布局无法居中

时间:2016-12-01 14:44:52

标签: android xml layout

这是我在布局文件中的xml:

  <?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
                android:background="@color/cwigreen">
  <LinearLayout
    android:orientation="vertical"
    android:layout_centerInParent="true"
    android:layout_width="wrap_content"
    android:layout_height ="wrap_content"
    android:background ="@drawable/customCard"
    />
  <LinearLayout
    android:orientation="horizontal"
    android:layout_width="match_parent"
    android:layout_height ="match_parent">
    <LinearLayout
      android:orientation="vertical"
      android:layout_width="wrap_content"
      android:layout_height ="match_parent">
    <TextView
           android:text="Policy Holder Name: "
           android:layout_width="match_parent"
           android:layout_height="wrap_content"
           android:layout_centerHorizontal="true"
           android:textStyle="bold"
           android:textColor ="@color/black"
           android:textSize="14dip" />
    <TextView
           android:text="ID Number: "
           android:textSize="14dip"
           android:layout_centerHorizontal="true"
           android:textColor ="@color/black"
           android:textStyle="bold"
           android:layout_width="match_parent"
           android:layout_height="wrap_content"/>
    </LinearLayout>
    <LinearLayout
      android:orientation="vertical"
      android:layout_width="wrap_content"
      android:layout_height ="match_parent">
      <TextView
            android:id="@+id/holderName"
            android:text=""
            android:layout_centerHorizontal="true"
            android:textColor ="@color/black"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:textSize="14dip" />
      <TextView
             android:id="@+id/idNumber"
             android:text=""
             android:layout_centerHorizontal="true"
             android:textColor ="@color/black"
             android:layout_width="match_parent"
             android:layout_height="wrap_content"
             android:textSize="14dip" />
    </LinearLayout>
  </LinearLayout>
</RelativeLayout>

这是输出enter image description here

的图片

我需要将文本视图显示在卡背景图像的中间。我尝试过使用网格布局和许多其他设置。任何帮助将不胜感激。

2 个答案:

答案 0 :(得分:1)

你应该试试这个xml结构。 (我在示例图片中没有背景知识)

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/cwigreen">
<LinearLayout
    android:orientation="vertical"
    android:layout_centerInParent="true"
    android:layout_width="wrap_content"
    android:layout_height ="wrap_content"
    android:background ="@drawable/customCard"
    >

    <RelativeLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent">

        <TextView
            android:text="Policy Holder Name: "
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_centerHorizontal="true"
            android:textStyle="bold"
            android:textColor ="@color/black"
            android:textSize="14dp"
            android:id="@+id/textView1" />

        <TextView
            android:text="ID Number: "
            android:textSize="14dp"
            android:layout_centerHorizontal="true"
            android:textColor ="@color/black"
            android:textStyle="bold"
            android:layout_below="@id/holderName"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:id="@+id/textView2" />

        <TextView
            android:id="@+id/holderName"
            android:text=""
            android:layout_centerHorizontal="true"
            android:textColor ="@color/black"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_toRightOf="@id/textView1"
            android:textSize="14dip" />

        <TextView
            android:id="@+id/idNumber"
            android:text=""
            android:layout_centerHorizontal="true"
            android:textColor ="@color/black"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_toRightOf="@id/textView2"
            android:layout_alignBottom="@id/textView2"
            android:textSize="14dip" />
    </RelativeLayout>
</LinearLayout>

结果如下图所示。

enter image description here

请提出任何其他问题

答案 1 :(得分:0)

您的线性水平布局(第二个)也应使用android:layout_centerInParent="true"

在父级中居中