如何垂直和水平对齐代码?

时间:2019-02-18 05:36:01

标签: android xml android-layout

我正在编写此代码,但是我的代码不会自动垂直对齐。请指导我最好的方法。

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent">


    <TextView
        android:id="@+id/quantity"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Quantity"/>

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="0" />
</LinearLayout>

代码应类似于:

Quantity
0

正在显示:

Quantity0

5 个答案:

答案 0 :(得分:0)

请注意,您尚未在orientation中设置LinerLayout,请将其更改为:

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

由于默认方向是horizontal,所以您的TextView都在同一行。

将方向设置为垂直后,它将如下所示:

Quantity
0

答案 1 :(得分:0)

  

使用<Space/>标签在视图之间添加空间,或者也可以通过提及边距和填充来进行调整。但是空间将是一个不错的选择,因为您无需担心应用中的RTL和LTR布局。

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent">


    <TextView
        android:id="@+id/quantity"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Quantity"/>

    <Space
        android:layout_width="4dp"                     // change acc to your need.
        android:layout_height="wrap_content" />

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="0" />
</LinearLayout>

答案 2 :(得分:0)

只需在主LinearLayout中添加方向。如下所示:

<LinearLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_orientation="vertical">
        .
        .
        . 
</LinearLayout>

您可以根据需要使用垂直或水平方向。 每当您在LinearLayout中使用多个视图时,都必须在LinearLayout中定义方向。

答案 3 :(得分:0)

最简单的方法是在数量之后添加空间,这意味着您的代码将是

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent">


    <TextView
        android:id="@+id/quantity"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Quantity "/>

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="0" />
</LinearLayout>

答案 4 :(得分:0)

首先,您可以将orientation属性添加到LinearLayout,然后按如下所示设置方向vertical

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_orientation="vertical">

 <TextView
    android:id="@+id/quantity"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="Quantity"/>

 <TextView
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="0" />

 </LinearLayout>

如果未设置方向,则默认情况下,在XML中LinearLayout的方向为horizontal。因此,如果需要LinearLayout中的垂直视图,则将方向属性设置为vertical