📜  Kotlin 中的 Android 线性布局(1)

📅  最后修改于: 2023-12-03 15:02:32.421000             🧑  作者: Mango

Kotlin 中的 Android 线性布局

在 Android 开发中,布局是非常重要的一部分。线性布局是其中最基础也是最常用的一种,它可以让开发者以线性的方式将控件摆放在屏幕上。

在 Kotlin 中,使用线性布局和其他布局一样需要在 XML 文件中声明。我们来看一下如何在 Kotlin 中使用线性布局。

基本用法

声明一个线性布局需要使用 <LinearLayout> 标签,其中 orientation 属性用于指定布局的方向,有水平方向和垂直方向两种。

下面是一个垂直线性布局的例子:

<LinearLayout
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical">

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

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

</LinearLayout>

这段代码创建了一个在屏幕中垂直排列的线性布局,其中包含了两个 TextView

权重和分配比例

在线性布局中,我们可以使用 layout_weight 属性来实现权重分配。比如我们可以让两个 TextView 以 3:7 的比例分配空间:

<LinearLayout
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical">

    <TextView
        android:text="Hello"
        android:layout_width="match_parent"
        android:layout_height="0dp"
        android:layout_weight="3"/>

    <TextView
        android:text="World!"
        android:layout_width="match_parent"
        android:layout_height="0dp"
        android:layout_weight="7"/>

</LinearLayout>

上面的例子中,layout_width 属性设置为 match_parentlayout_height 属性设置为 0dp,表示我们将使用 layout_weight 属性来实现高度的分配。

嵌套

线性布局也可以嵌套使用,从而实现较为复杂的布局。下面是一个水平线性布局嵌套垂直线性布局的例子:

<LinearLayout
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="horizontal">

    <LinearLayout
        android:layout_width="0dp"
        android:layout_height="match_parent"
        android:layout_weight="1"
        android:orientation="vertical">

        <TextView
            android:text="Hello"
            android:layout_width="match_parent"
            android:layout_height="0dp"
            android:layout_weight="1"/>

        <TextView
            android:text="World!"
            android:layout_width="match_parent"
            android:layout_height="0dp"
            android:layout_weight="2"/>

    </LinearLayout>

</LinearLayout>

这段代码创建了一个以 1:1 的比例分配宽度的水平线性布局,并在其中嵌套了一个垂直线性布局,其中包含了两个 TextView

总结

以上就是 Kotlin 中使用线性布局的基本方法。线性布局虽然简单,但是在实现一些简单布局的时候非常实用。希望这篇文章能够帮助你更好地掌握 Android 开发中的布局技巧。