安卓开发LinearLayout的属性极其用法

线性布局(LinearLayout)是 Android 开发中常用的布局之一,它可以按照水平(horizontal)或垂直(vertical)方向排列子视图。以下是线性布局的一些常用属性和用法:

  1. **android:orientation**:指定布局方向,可以设置为"horizontal"(水平)或"vertical"(垂直)。

示例:

```xml

<LinearLayout

android:layout_width="match_parent"

android:layout_height="wrap_content"

android:orientation="vertical">

<!-- 垂直布局 -->

</LinearLayout>

```

  1. **android:layout_weight**:设置子视图在布局中的相对权重,用于控制子视图在分配额外空间时的相对大小比例。通常与布局的宽度或高度为 "0dp" 配合使用。

示例:

```xml

<LinearLayout

android:layout_width="match_parent"

android:layout_height="wrap_content"

android:orientation="horizontal">

<Button

android:layout_width="0dp"

android:layout_height="wrap_content"

android:layout_weight="1"

android:text="按钮1" />

<Button

android:layout_width="0dp"

android:layout_height="wrap_content"

android:layout_weight="2"

android:text="按钮2" />

</LinearLayout>

```

  1. **android:gravity**:设置布局中子视图的对齐方式,例如居中、靠左、靠右等。注意,该属性影响的是子视图在布局内的对齐方式,而不是布局本身。

示例:

```xml

<LinearLayout

android:layout_width="match_parent"

android:layout_height="wrap_content"

android:orientation="vertical"

android:gravity="center_horizontal">

<!-- 子视图会在垂直方向上居中对齐 -->

</LinearLayout>

```

  1. **android:layout_gravity**:设置布局在父布局中的对齐方式,例如居中、靠左、靠右等。

示例:

```xml

<LinearLayout

android:layout_width="match_parent"

android:layout_height="match_parent"

android:layout_gravity="center_horizontal">

<!-- 布局会在水平方向上居中对齐 -->

</LinearLayout>

```

  1. **android:layout_margin** 和 **android:layout_marginStart**、**android:layout_marginEnd**、**android:layout_marginTop**、**android:layout_marginBottom**:设置子视图与父布局或其他子视图之间的外边距。

示例:

```xml

<Button

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:layout_margin="8dp"

android:text="按钮" />

```

这些是线性布局中常用的一些属性和用法。

相关推荐
乌暮3 小时前
请求进门先安检:Spring 拦截器与统一功能实战指南
java·开发语言·后端·学习·spring
学长毕设3 小时前
基于SpringBoot的烘焙商品商品系统-附源码
java·spring boot·后端
好的佩奇3 小时前
蓝牙之无线电与通信距离
android·flutter·蓝牙
Zhao-Jichao3 小时前
AI Prompting for Everyone 课程笔记 - 05 使用深度搜索 Using Deep Research
人工智能·笔记
vilya4 小时前
我把一套完整的 Python Agent 运行时塞进手机 APK:依赖闭包、Rust 轮子和三个真机坑
android
金銀銅鐵4 小时前
[Java] 用纯 Swing 做一个《論語·學而》阅读器
java·ai编程·交互设计
云析赢指标公式网45 小时前
指标开发笔记|主图搭配双副图成套指标逻辑拆解
人工智能·笔记
dreams_dream5 小时前
微信开发者工具报错解决笔记:删除页面后仍报 ENOENT: no such file or directory
笔记
艾伦_耶格宇5 小时前
【kubernetes - 1.28版本】-11 K8S核心组件
java·容器·kubernetes
图灵-M5 小时前
【数据结构】静态 & 动态顺序表
c语言·数据结构·笔记