安卓开发06:布局-线性布局 LinearLayout

2023-05-16

LinearLayout把视图组织成一行或一列。子视图能被安排成垂直的或水平的。线性布局是非常常用的一种布局方式。

请看一个布局例子:

[html]  view plain copy print ?
  1. <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"  
  2.     android:layout_width="fill_parent"  
  3.     android:layout_height="fill_parent"  
  4.     android:orientation="vertical" >  
  5.   
  6.     <!-- 大的框架,横着布局 -->  
  7.   
  8.     <LinearLayout  
  9.         android:layout_width="match_parent"  
  10.         android:layout_height="match_parent"  
  11.         android:orientation="horizontal" >  
  12.   
  13.         <!-- 线性布局-竖着布局 -->  
  14.   
  15.         <LinearLayout  
  16.             android:layout_width="100dp"  
  17.             android:layout_height="fill_parent"  
  18.             android:orientation="vertical" >  
  19.   
  20.             <Button  
  21.                 android:id="@+id/button1"  
  22.                 android:layout_width="wrap_content"  
  23.                 android:layout_height="wrap_content"  
  24.                 android:text="Button1" />  
  25.   
  26.             <Button  
  27.                 android:id="@+id/button1"  
  28.                 android:layout_width="wrap_content"  
  29.                 android:layout_height="wrap_content"  
  30.                 android:text="Button2" />  
  31.         </LinearLayout>  
  32.   
  33.         <!-- 线性布局-横着着布局 -->  
  34.         <LinearLayout  
  35.             android:layout_width="match_parent"  
  36.             android:layout_height="wrap_content"  
  37.             android:orientation="horizontal" >  
  38.   
  39.             <Button  
  40.                 android:id="@+id/button1"  
  41.                 android:layout_width="wrap_content"  
  42.                 android:layout_height="wrap_content"  
  43.                 android:text="Button3" />  
  44.   
  45.             <Button  
  46.                 android:id="@+id/button1"  
  47.                 android:layout_width="wrap_content"  
  48.                 android:layout_height="wrap_content"  
  49.                 android:text="Button4" />  
  50.         </LinearLayout>  
  51.     </LinearLayout>  
  52.   
  53. </LinearLayout>  

效果图:


线性布局框架的一个属性表:

属性描述
layout_width指定View或ViewGroup的宽度
layout_height指定View或ViewGroup的高度
layout_marginTop指定View或ViewGroup上方的额外空间
layout_marginBottom指定View或ViewGroup下方的额外空间
layout_marginLeft指定View或ViewGroup左侧的额外空间
layout_marginRight指定View或ViewGroup右侧的额外空间
layout_gravity指定View或ViewGroup中的子视图的排列位置
layout_weight指定指派给View或ViewGroup的额外空间尺寸
layout_x指定View或ViewGroup的x坐标
layout_y指定View或ViewGroup的y坐标


可以看到layout_width和layout_hight中经常有fill_parentwrap_contentmatch_parent来区分宽度和高度。这三者什么区别呢?

fill_parent

设置一个构件的布局为fill_parent将强制性地使构件扩展,以填充布局单元内尽可能多的空间。这跟Windows控件的dockstyle属性大体一致。设置一个顶部布局或控件为fill_parent将强制性让它布满整个屏幕。

wrap_content

设置一个视图的尺寸为wrap_content将强制性地使视图扩展以显示全部内容。以TextView和ImageView控件为例,设置为wrap_content将完整显示其内部的文本和图像。布局元素将根据内容更改大小。设置一个视图的尺寸为wrap_content大体等同于设置Windows控件的Autosize属性为True。

match_parent

Android2.2中match_parent和fill_parent是一个意思 .两个参数意思一样,match_parent更贴切,于是从2.2开始两个词都可以用。那么如果考虑低版本的使用情况你就需要用fill_parent了

视图和视图组概念:

视图:就是显示在屏幕上的一个组件(Widget)。View的例子:按钮(Button)、标签(TextView)和文本框(EditText)。每个“视图”(View)都继承自基类android.view.View。

视图组:可以包含一个或多个View。ViewGroup本身就是一种特殊的View,它提供了一个布局,可以使用这个布局去组织一系列的View视图。LinearLayout和FrameLayout。每个“ViewGroup”都继承自基类android.view.ViewGroup

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

安卓开发06:布局-线性布局 LinearLayout 的相关文章

  • Ubuntu20.04下基于ROS和PX4的无人机仿真平台的基础配置搭建(我所遇到的问题)

    写在前面 xff1a 我目前也处于学习阶段 xff0c 当时按照ROS教程安装的20 04 xff0c 随后搭建XTDrone阶段因为版本问题出现了很多问题 xff0c 这是我根据问题 xff0c 检索后汇总的一些解决措施 本文中提到的问题
  • 手机如何远程连接linux系统的VPS

    1 首先下载安装APP xff1a iTerminal 2 运行iTerminal xff0c 然后点击SSH栏 3 然后按要求填入各项内容 xff0c 确认都正确后点击底下的连接按钮 4 如图连接成功后即可在手机上操作了
  • 学习总结

    错误 xff1a TypeError ERR INVALID ARG TYPE The 34 id 34 argument must be of type string Received an instance of IncomingMes
  • Java笔记_3(循环)

    Java笔记 3 一 判断与循环1 1 顺序结构1 2 分支结构1 2 1 if语句1 2 2 switch语句 1 3 循环结构1 3 1 for循环1 3 2 while循环1 3 3 do while循环 1 4 回文数的判断1 5
  • 关于getchar的用法及实例解析

    一 getchar 函数是什么 xff1f getchar 函数是获取一个字符 说到这里就有人问了 xff0c 为什么他的返回类型是int xff1f 因为实际上EOF 61 end of file xff08 1 xff09 xff0c
  • springboot基于JAVA的电影推荐系统的开发与实现 附源码-毕业设计112306

    目 录 摘 要 4 Abstract 5 第 1 章 前 言 6 1 1 研究背景 6 1 2 研究现状 6 1 3 系统开发目标 6 第 2 章 技术与原理 8 2 1 JSP 介绍 8 2 2 JAVA 技术 8 2 3 MySQL 数
  • Python 把图片变成字符画

    34 2022 2 12 34 from PIL import Image PIL 是一个 Python 图像处理库 ascii char 61 list 64 B 8 amp WM oahkbdpqwmZO0QLCJUY123456789
  • centos shasum 未找到命令

    span class token punctuation span root 64 redis 7 106 span class token punctuation span span class token comment echo n
  • ireport的使用总结

    ireport的使用总结 截图居然都没显示出来 xff0c 如有需要可以到 xff08 http download csdn net detail czp0608 4140640 xff09 下载 相信很多java程序员们 xff0c 在开
  • 2020-11-16 ZYNQ固化过程遇到的问题

    用XIlinx 2017 04版本固化程序的时候出现 Xilinx Program Flash Program Flash v2017 4 64 bit SW Build 2086221 on Fri Dec 15 20 55 39 MST
  • Windows终端美化

    Windows终端美化教程 一 设置PowerShell默认启动Windows Terminal 从Microsoft Store下载并打开Windows Terminal点击上方的下拉三角 xff0c 点击设置 xff0c 在启动中默认终
  • 在linux中安装weblogic12c

    卸载weblogic find span class token operator span opt span class token operator span weblogic3 span class token operator sp
  • 算法实现题:3-9 租用游艇问题

    算法实现题 xff1a 3 9 租用游艇问题 题目略 这个一个可用 DP 求解的问题 N 个游艇出租站 xff0c 不妨从出发到终点分别编号 0 xff0c 2 xff0c N 1 而且每两个站的租金都是不一样的 xff0c 我们用 r x
  • 開始在csdn上寫blog

    哈哈 現在開始寫些技術性的文字啦
  • 廣州亞運會項目維護?!

    今天要搞什麽亞運會的項目維護 xff0c 計算機學院需要招收一些精英 唉 xff01 他們就是好 xff01 有這麼多的機會 xff0c 我們這邊呢 xff01 看來學院老師一點都不關心我們的將來就業情況 我就鬱悶了 難道我們註定是這樣的嗎
  • arch linux 命令行设置临时静态IP

    设置临时静态ip 查看网卡名称 启用网卡 设置ip 设置默认网关 设置dns服务器 设置备用dns服务器 测试ping百度域名 xff08 等几秒出结果 xff09 span class token function ip span add
  • Jetpack-LiveData原理补充

    本篇主要对上篇分析LiveData时遗留的问题进行补充 xff0c 阅读本文需要实现对LiveData的原理有一定的了解 xff0c 如果不了解可以参考上一篇文章 xff1a Jetpack LiveData LiveData粘性事件 可以
  • postgre删除数据表重复数据

    select distinct into t sup supcomm copy from t sup supcomm drop table t sup supcomm select into t sup supcomm from t sup
  • postgre——to_date使用

    s date 61 to date to char date in 39 yyyy MM dd 39 39 yyyy MM dd 39 date in为time类型 xff0c s date为date类型
  • 旧电脑通过转接卡安装nvme固态硬盘无需修改bios即可用旧SATA硬盘实现UEFI启动win10/11

    注意 xff1a 本文探讨的是支持UEFI启动的旧电脑 MBR启动个人感觉已经被淘汰 xff0c 作者不再做研究 主要材料 xff1a PCI E转M 2的转接卡 xff08 根据你旧电脑支持情况选择 xff09 支持NVME协议M 2接口

随机推荐

  • postgre——case、union、小计总计(GROUP BY ROLLUP)写法

    将几张不同表结构的数据全部合并在一起 xff0c 使用了case union xff0c 同时实现小计总计 小计总计使用的 GROUP BY ROLLUP函数 xff0c GROUP BY ROLLUP使用双括号将字段括起来 xff0c 是
  • postgre连接符

    一 逻辑操作符 xff1a 常用的逻辑操作符有 xff1a AND OR 和NOT 其语义与其它编程语言中的逻辑操作符完全相同 二 比较操作符 xff1a 下面是PostgreSQL中提供的比较操作符列表 xff1a 操作符 描述 lt 小
  • springmvc拦截器

    1 自定义的拦截器 publicclass FirstInterceptor implements HandlerInterceptor 实现这个接口并重写方法 lt 配置自定义的拦截器 gt lt bean class 61 34 com
  • springmvc异常处理

    1 64 ExceptionHandler 在 64 ExceptionHandler 方法的入参中可以加入 Exception 类型的参数 该参数即对应发生的异常对象 64 ExceptionHandler 方法的入参中不能传入 Map
  • SpringMCV运行流程及整合spring

    一 Spring整合SpringMVC 64 Service用于标注业务层组件 64 Controller用于标注控制层组件 xff08 如struts中的action xff09 64 Repository用于标注数据访问组件 xff0c
  • Mac 下 man 命令汉化

    brew install automake brew install opencc git clone https github com man pages zh manpages zh git cd manpages zh autorec
  • FTP配置多用户多目录多权限

    环境介绍 根据开发的需求 要求创建FTP服务器 xff0c 把前端和后端分开用不同的FTP账号 系统环境 centos 7 4 防火墙设置 systemctl stop firewalld service 停止firewall xff08
  • Process finished with exit code -1073740791 (0xC0000409)

    选择编辑配置 勾选这个 出来具体问题 RuntimeError Unsupported image type must be 8bit gray or RGB image 就是这个原因 然后我卡在这里 xff0c 现在都还没有解决这个问题
  • Centos 6.8升级Python2.6.6至2.7.8

    由于之前用Python 2 7版本写了一个脚本 xff0c 移植到新的环境之后 xff0c 由于CentOS自带的Python版本较低 xff0c 有些函数执行出错 本文介绍CentOS 6 8从自带的Pyhon版本是2 6 6升级到2 7
  • Windows Server取消登录需按Ctrl+Alt+Delete组合键

    通过远程软件频繁远程Windows Server会遇到Ctrl 43 Alt 43 Delete组合键无法进入输入用户和密码的界面 xff0c 导致机器并没死机但是想登录又没法输入密码 xff0c 记录下取消方法 xff1a 1 Windo
  • 安装 Ubuntu 22.04.1 LTS 桌面版(详细步骤)

    文章目录 前言 xff1a 安装 Ubuntu 22 04 1 LTS 的先决条件 一 下载 Ubuntu 22 04 1 LTS 安装介质 二 制作 Ubuntu 22 04 1 LTS 引导 U 盘 三 从 U 盘引导 Ubuntu 四
  • Windows Server 2016-重置目录还原模式密码

    目录还原模式 xff1a Directory Services Restore Mode xff0c 简称DSRM xff0c 又称目录服务恢复模式 是Windows域控制器的服务器安全模式启动选项 DSRM允许管理员用来修复或还原修复或重
  • 人的梦想 是不会结束的!

    文章目录 前言一 一年之约1 学习嵌入式2 探寻嵌入式之路 二 我的心跳1 奉劝2 行动人的梦想是永远不会结束的 xff01 前言 随着在程序员这条路上不断发展 xff0c 自己学得越多 xff0c 就会感觉自己学的东西有多渺小 下面就说说
  • 记一次centos系统下的串口登陆异常问题

    一 问题概述 在使用centos7 5版本系统时 xff0c 安装配置好官方原版桌面环境后 xff0c 发现通过串口登陆系统出现了问题 具体问题现象有两种情况 xff1a 第一次通过串口输入用户名后 xff0c 输入密码的第一字符 xff0
  • Android Studio中引入Kotlin

    安装Kotlin插件 从Android studio3 0开始我们已经全面支持Kotlin 我们不需要添加Kotlin插件 而在Android2 X xff0c 我们还是需要添加Kotlin插件 Setting gt Plugins中下载k
  • 串口输出乱码问题的解决方法汇总(持续更新):

    平时工作中程序员在调试时总会用到串口打印数据以及一些标志位查看程序是否出现问题 但是在使用时总会遇到各种各样的问题 xff0c 最常见的就是输出乱码问题 xff08 指的是有收到数据但数据显示的是一堆不认识的汉字或字符 xff09 xff0
  • 谈谈技术在日常工作生活中的重要性

    我从事 技术方面 的工作也有10多年了 从最初的一个软件工程师 xff0c 也逐渐成长为项目经理 xff0c 部门经理 无论岗位怎么变换 xff0c 但是我还是没有离开技术方面的工作 xff0c 一直对技术的研究有很大热情 Csdn是非常棒
  • JSP中的网页编写格式——MIME TYPE?

    一 首先 xff0c 我们要了解浏览器是如何处理内容的 在浏览器中显示的内容有 HTML 有 XML 有 GIF 还有 Flash 那么 xff0c 浏览器是如何区分它们 xff0c 决定什么内容用什么形式来显示呢 xff1f 答案是 MI
  • 安卓开发05:Activity之间链接和传递参数

    Activity之间链接和传递参数主要通过Intent安卓的一个对象来实现 首先我们创建一个MainActivity xff1a java view plain copy print package com example androidt
  • 安卓开发06:布局-线性布局 LinearLayout

    LinearLayout把视图组织成一行或一列 子视图能被安排成垂直的或水平的 线性布局是非常常用的一种布局方式 请看一个布局例子 xff1a html view plain copy print lt LinearLayout xmlns