`

Layouts介绍

阅读更多

Layout管理器(一般称“layouts”)是ViewGroup的扩展,被设计用来控制子控件在屏幕上的位置。Layouts能相互嵌套,通过Layout管理器的结合,你可以创建任意复杂的界面。

 

Android SDK包含一些简单的Layout,帮助你构建UI。选择layout间正确的结合来使界面易于理解和使用就取决于你咯。

 

下面的列表包含了一些更通用的layout类:

 

FrameLayout

最简单的layout管理器,FrameLayout简单地将每一个View显示在左上角。增加多个子View时,新的View位于先前的上方,并且还遮盖先前的View

 

LinearLayout

LinearLayout用来沿着某一个直线方向增加子View,包括垂直的和水平的。垂直的layout每一行有一个孩子;而水平的layout只有一行。LinearLayout可以为每个子View指定“weight”,来控制在可获得的空间里每个子View的相对大小。


RelativeLayout

使用RelativeLayout,你可以定义每个子View相对于其它的View或屏幕边界的位置。

 

TableLayout

TableLayout允许你按照网格的行列来放置View。每格可以占据多个行和列,并且列可以设定为缩小或增长。


AbsoluteLayout

AbsoluteLayout里,每个子View的位置以绝对坐标进行定义。使用这个类,你可以为组件安排最精确的布局,但是有代价的。与之前的管理器比较而言,以绝对的坐标来定义layout意味着你的layout不能为不同的屏幕分辨率和方向进行动态调整。

 

Android文档详细的描述了每个layout的特性和属性,所以不在这里重复说明,我建议你可以参见:

 

http://code.google.com/android/devel/ui/layout.html.

 

在这章的后面,你会学习到如何通过扩展这些layout类来创建组合的控件(widget由一些互相联系的View组成)。

分享到:
评论

相关推荐

    Android Layouts

    以下是对安卓布局系统知识点的详细介绍。 首先,安卓系统中主要的布局类型包括线性布局(LinearLayout)、相对布局(RelativeLayout)、帧布局(FrameLayout)、网格布局(GridLayout)以及约束布局...

    前端开源库-idyll-layouts

    **IDyll布局介绍** IDyll布局库提供了多种预设布局,例如: 1. **单列布局**:适合简单的文档结构,所有内容在一个列中展示。 2. **双列布局**:适用于包含主内容和辅助信息(如侧边栏)的页面。 3. **网格布局**...

    Data Page Layouts for Relational Databases

    接着,我们将重点介绍一种新的数据组织模型——PAX(Partition Attributes Across),这是作者提出的一种提高缓存利用率的方法。文章还会对PAX在不同内存系统设计下的性能表现进行分析。 在传统的数据库系统中,...

    ExtJS-Layouts.pdf

    下面将逐一介绍: #### Absolute(绝对布局) 绝对布局允许子项精确地定位在容器内,适合需要精细控制每个元素位置的场景。 #### Anchor(锚点布局) 锚点布局基于百分比或像素值来确定子项的大小,适合需要子项...

    windowbuilder中layout介绍

    WindowBuilder 中的 Layout 介绍 WindowBuilder 是一个功能强大的 GUI 构建器,可以帮助开发者快速创建复杂的图形用户界面。Layout 是 WindowBuilder 中的一个重要概念,负责管理 GUI 组件的布局和位置。下面我们将...

    Delphi XE10.3 FMX 画图程序资源文件介绍

    Delphi XE10.3 FMX 画图程序资源文件介绍 本仓库提供了一个名为 DelphiXE10.3_FMX画图程序.rar 的资源文件下载。该资源文件包含了使用 Delphi XE10.3 开发的 FMX 画图程序的相关代码和资源。 资源文件描述 FMX...

    SharePoint 2013 页面访问,Url中间多一段_layouts15start#.pdf

    例如,博客“***”和“***”提供了关于MDS的详细介绍和实施指导。 需要注意的是,在某些情况下,可能会遇到MDS未正确应用导致的页面加载问题。例如,当尝试访问特定的页面(如“***”)时,虽然地址正确,但是URL...

    java_FX-Intro-and-Layouts-.rar_java fx

    这是一个ppt给我们介绍了一下java FX的layout

    modern-css-layouts

    本资源“modern-css-layouts”旨在介绍和探讨这些现代布局技术,帮助你掌握创建高效网页布局的方法。 在HTML中,布局主要依赖于CSS(Cascading Style Sheets)来实现。CSS布局技术的发展经历了从传统布局如表格布局...

    Exploring_The_Maze_Of_Memory_Layouts_Towards_Exploits.pdf

    在本文中,我们将介绍我们的解决方案迷宫,它能够将POC示例的不可利用内存布局转换为可利用布局,并在可能的情况下自动生成各种工作利用。通常,它首先使用程序分析技术来识别代码片段(表示为内存操作原语),这些...

    discourse-layouts:在Discourse中使用任何自定义布局

    1. `README.md`:项目介绍和使用指南。 2. `config.rb`:可能包含项目配置信息。 3. `lib/`目录:存放JavaScript代码的目录,可能有`discourse-plugin.js`作为主要的插件入口文件。 4. `assets/`目录:可能包含CSS...

    moss自定义登陆页面(技術文檔)

    本文档主要介绍了如何在Moss环境中定制登录页面。 首先,理解SharePoint 2007中的表单认证工作原理。当启用表单认证后,系统会将用户重定向到`login.aspx`页面进行登录。这个页面位于`\_layouts`文件夹内,这是一个...

    html5响应式个人简历主页介绍模板.rar

    响应式设计是HTML5的一个重要组成部分,通过媒体查询(media queries)和流式布局(flexible layouts)等技术,使网页能在手机、平板电脑和桌面电脑等多种设备上呈现一致的用户体验。 CSS3在该模板中起到了关键作用...

    egghead-nativescript-layouts:https:egghead.iocoursesbuild-basic-nativescript-app-templates

    【标题】:“egghead-nativescript-layouts:构建基本的NativeScript应用模板教程” 这个标题提到了一个在线教育课程,专注于使用NativeScript开发移动应用程序。"egghead.io" 是一个知名的在线学习平台,提供各种...

    iOS8SelfSizingCells:在 iOS 8 中使用 Auto Layouts 引入的 Self Sizing Cells 示例以及错误自动计算 UILabel 的 preferredMaxLayoutWidth 的解决方法

    在 iOS 8 中使用 Auto Layouts 引入的Self Sizing Cells示例以及不正确自动计算 UILabel 的preferredMaxLayoutWidth的解决方法。 ##介绍 在 iOS 6 中,Apple 向 UILabel 添加了preferredMaxLayoutWidth属性,...

    log4j 使用介绍

    配置文件可以指定 Loggers、Appenders 和 Layouts,以及它们之间的关系。 **总结** log4j 通过 Logger、Appender 和 Layout 三个核心概念,提供了强大的日志记录功能。通过灵活的配置,它可以适应各种项目需求,从...

    one-line-layouts:简单CSS线可帮助构建现代布局

    介绍 该项目是使用简单有用CSS属性创建简单有用的布局的实现。 该项目的背景用例基于此链接 。 而且,我尝试使用UI Design Daily的真实设计参考来实现该用例,因此希望它可以更容易地理解如何创建该用例。 设计参考 ...

    基于quasar cli搭建的民宿介绍静态网页源码

    - `layouts`包含了应用的布局组件。 - `pages`存放各个路由页面的组件。 - `store`(如果使用Vuex)管理应用的状态。 2. `quasar.conf.js`:这是Quasar项目的配置文件,用于设置构建选项,比如CSS预处理器、路由...

    log4j介绍.doc

    ### Log4j详细介绍 #### 一、Log4j概述 **Log4j**是一个开源的日志框架,由Apache Software Foundation负责维护。它最初源于1996年的E.U. SEMPER项目,该项目为了满足大型应用程序对日志或跟踪API的需求而开发了一...

    Android开发 模仿乐动力介绍页面第一屏动画UI界面效果(个人整理07)

    首先,我们需要了解Android UI设计的基础,包括布局(Layouts)、控件(Widgets)以及颜色和字体等视觉元素的运用。在乐动力的介绍页面,可能使用了诸如`LinearLayout`、`RelativeLayout`或`ConstraintLayout`等布局...

Global site tag (gtag.js) - Google Analytics