1.线性布局
线性布局由LinearLayout类来代表,它们将容器里的组件一个挨着一个地排列起来。不仅可以控制个组件横向排列,也可控制各组件纵向排列。
LinearLayout的常用XML属性及相关方法的说明
XML属性 |
相关方法 |
说明 |
android:gravity |
setGravity(int) |
设置布局管理器内组件的对齐方式。该属性支持top,bottom,left,right,center_certical,
center_horizontal,fill_horizontal,center,
fill,clip_vertical,clip_horizontal。也可以同时制定多种堆砌方式的组合,例如left|center_horizontal 代表出现在屏幕左边,而且垂直居中。竖线前后千万不能出现空格
|
android:orientation |
setOrientation(int) |
设置布局管理器内组件的排列方式,可以设置为
horizontal(水平排列)、vertical(垂直排列、默认值)两个值的其中之一
|
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:gravity="right|center_horizontal">
<Button android:layout_height="wrap_content"
android:text="@string/btl1"
android:id="@+id/btl1" android:layout_width="94dp">
</Button>
<Button android:layout_height="wrap_content"
android:text="@string/btl2"
android:id="@+id/btl2" android:layout_width="94dp">
</Button>
<Button android:layout_height="wrap_content"
android:text="@string/btl3"
android:id="@+id/btl3" android:layout_width="94dp">
</Button>
<Button android:layout_height="wrap_content"
android:text="@string/btl4"
android:id="@+id/btl4" android:layout_width="94dp">
</Button>
<Button android:layout_height="wrap_content"
android:text="@string/btl5"
android:id="@+id/btl5" android:layout_width="94dp">
</Button>
<Button android:layout_height="wrap_content"
android:text="@string/btl6"
android:id="@+id/btl6" android:layout_width="94dp">
</Button>
</LinearLayout>
2.表格布局
表格布局由TableLayout所代表,表格布局采用行,列的形式来管理UI组件,TableLayout并不需要明确地声明包含多少行,列,而是通过添加TableRow,其他组件来控制表格的行数和列数。
每次想TableLayout中添加一个TableRow,该TableRow就是一个表格行,TableRow也是容器,因此它可以不断地添加其他组件,每添加一个子组件该表格就增加一列。
TableLayout的常用XML属性及相关方法的说明
XML属性 |
相关方法 |
说明 |
android:collapseColumns |
setColumnCollapsed(int,boolean) |
设置需要被隐藏的列的列序号,多个列序号之间用逗号隔开 |
android:shrinkColumns |
setShrinkAkllColumns(boolean) |
设置允许被收缩的列的列序号,多个列序号之间用逗号隔开 |
android:stretchColumns |
setStretchAllColumns(boolean) |
设置允许被拉伸的列的列序号,多个列序号之间用逗号隔开 |
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
<!-- 第一个表格布局,指定第2列允许收缩,第3列允许拉伸 -->
<TableLayout android:id="@+id/tl1"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:shrinkColumns="1"
android:stretchColumns="2"
>
<!-- 独占一行 -->
<Button android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:text="独自一行的按钮"
android:id="@+id/btt1">
</Button>
<TableRow >
<Button android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:text="普通按钮"
android:id="@+id/btt2" >
</Button>
<Button android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:text="允许收缩按钮"
android:id="@+id/btt3">
</Button>
<Button android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:text="可以被允许拉伸按钮"
android:id="@+id/btt4">
</Button>
</TableRow>
</TableLayout>
<!-- 第二个表格布局,指定第2列隐藏 -->
<TableLayout android:id="@+id/tl2"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:collapseColumns="1"
>
<!-- 独占一行 -->
<Button android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:text="独自一行的按钮"
android:id="@+id/btt5">
</Button>
<TableRow >
<Button android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:text="普通按钮1"
android:id="@+id/btt6" >
</Button>
<Button android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:text="普通按钮3"
android:id="@+id/btt7">
</Button>
<Button android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:text="普通按钮3"
android:id="@+id/btt8">
</Button>
</TableRow>
</TableLayout>
<!-- 第三个表格布局,指定第2列和第3列允许拉伸 -->
<TableLayout android:id="@+id/tl3"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:stretchColumns="1,2"
>
<!-- 独占一行 -->
<Button android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:text="独自一行的按钮"
android:id="@+id/btt9">
</Button>
<TableRow >
<Button android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:text="普通按钮1"
android:id="@+id/btt10" >
</Button>
<Button android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:text="允许拉伸按钮"
android:id="@+id/btt11">
</Button>
<Button android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:text="普通按钮3"
android:id="@+id/btt12">
</Button>
</TableRow>
<TableRow >
<Button android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:text="允许拉伸按钮"
android:id="@+id/btt13" >
</Button>
<Button android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:text="允许拉伸按钮"
android:id="@+id/btt14">
</Button>
</TableRow>
</TableLayout>
</LinearLayout>
效果图:
3.帧布局
帧布局由FrameLayout所代表,帧布局容器为每个加入其中的组件创建一个空白的区域(成为一帧),所有每个子组件占据一帧,这些帧都会根据gravity属性执行自动对齐。也就是说,把组件一个一个的叠加在一起。
FrameLayout的常用XML属性及相关方法的说明
XML属性 |
相关方法 |
说明 |
android:foreground |
setForeground(Drawable)
|
设置该帧布局容器的前景图像
|
android:foregroundGravity |
setForegroundGravity(int) |
定义绘制前景图像的gravity属性
|
渐进效果
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<!-- 一次定义7个Textview,先定义的TextView位于底层,后定义的TextView位于上层 -->
<TextView android:id="@+id/view01"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:width="210px"
android:height="50px"
android:background="#ff0000"/>
<TextView android:id="@+id/view02"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:width="180px"
android:height="50px"
android:background="#dd0000"/>
<TextView android:id="@+id/view03"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:width="150px"
android:height="50px"
android:background="#bb0000"/>
<TextView android:id="@+id/view04"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:width="120px"
android:height="50px"
android:background="#990000"/>
<TextView android:id="@+id/view05"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:width="90px"
android:height="50px"
android:background="#770000"/>
<TextView android:id="@+id/view06"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:width="60px"
android:height="50px"
android:background="#550000"/>
<TextView android:id="@+id/view07"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:width="30px"
android:height="50px"
android:background="#330000"/>
</FrameLayout>
效果图:
本人开了个充值淘宝网店。有需要的朋友请访问的店铺并拍下所充值的话费,
本店已加入消费保障服务计划,货源来源于淘宝充值平台,安全可靠便捷,
支付过后立即到账
http://xiaowen168.taobao.com
- 大小: 20.2 KB
- 大小: 3.4 KB
分享到:
相关推荐
在MFC中,布局管理器是一个重要的组件,它负责自动调整控件的位置和大小,以适应窗口的变化。本篇文章将深入探讨"MFC布局管理器",特别是描述中提到的"盒子布局管理器类CBoxLayout"。 MFC布局管理器的主要目标是...
AWT组件提供的6种布局管理器 AWT(Abstract Window Toolkit)组件提供了六种布局管理器,分别是BorderLayout、FlowLayout、GridLayout、GridBagLayout、CardLayout和BoxLayout。这些布局管理器可以帮助开发者更好地...
本教程主要聚焦于“布局管理器”的使用,通过多个可运行的实例来深入讲解这一主题。布局管理器是用于组织和调整控件在窗口中的位置和大小的工具,它在QT Creator中尤其关键,因为QT是广泛应用于Linux以及其他平台的...
首先,文件“020505_布局管理器的嵌套.avi”很可能是一个视频教程,详细介绍了如何在Android中使用布局管理器进行组件的嵌套。布局管理器的嵌套是创建复杂UI时常用的技术,它可以帮助开发者实现组件的层次结构,例如...
标题中的“一款基于Prototype 1.6 的web布局管理器”指的是一个用于Web应用程序的布局解决方案,它构建在Prototype JavaScript库的1.6版本之上。Prototype是一个广泛使用的JavaScript框架,它提供了一系列工具来简化...
在Android开发中,UI设计是至关重要的,而布局管理器(Layout Manager)则是构建用户界面的核心工具。Android提供了六种主要的布局管理器,每种都有其特定的用途和优势,使得开发者能够根据需求创建出各种各样的界面...
GridLayout是最常用的布局管理器之一,它将父组件划分为一个二维网格,子组件可以占据一个或多个单元格。GridLayout通过`numColumns`属性确定网格的列数,同时通过`makeColumnsEqualWidth`属性可以控制所有列是否...
本篇学习笔记主要探讨的是如何在Android应用中进行布局管理器的嵌套,这是一项提升界面复杂性和交互性的技术。我们将深入理解嵌套布局的工作原理,同时通过一个名为`NestedLayoutDemo`的实际项目来实践这些概念。 ...
### 安卓布局管理器 #### 核心概念 在深入掌握Android布局知识之前,我们首先需要了解Android平台下的控件类基础。整个Android的布局和控件体系构建在几个核心类上,其中最基础的是`View`和`ViewGroup`。 **View...
Java中的布局管理器是构建图形用户界面(GUI)的关键元素,它们负责自动调整和组织窗口内的组件。在Java AWT和Swing库中,布局管理器使得开发者无需精确设定每个组件的位置和大小,就能创建出适应不同屏幕尺寸和...
布局管理器的工作过程是,每个容器保存一个对一个布局管理器的引用,这个布局管理器对容器中的组件进行定位和整形。容器只是可以含有其他组件的组件。 在 Java 中,Container 类是所有容器的父类,它提供了对布局...
边界布局管理器(`BorderLayout`)是一种非常常见的布局管理器,主要用于处理容器内组件的定位,将其分布在容器的五个基本区域:北(North)、南(South)、东(East)、西(West)以及中心(Center)。这种布局方式...
在计算机编程,特别是图形用户界面(GUI)设计中,布局管理器是一个至关重要的概念。它负责控制窗口小部件(如按钮、文本框等)在屏幕上的位置和大小,确保它们能够适应不同分辨率和屏幕尺寸的设备。在Java Swing和...
自行设计程序,创建一个标题为“计算器”的框架。要求有菜单项,文本框、按钮等控件。采用BorderLayout或者GridLayout布局管理器。
提供与Win32窗口句柄相关的界面的布局管理,可以兼容SDK、MFC、ATL等能获取窗口句柄的界面库。 模块只有一个头文件LayoutManager.h,移植非常方便。代码附带测试工程。 资源为原创作品,可以应用于任何产品,不收取...
Swing布局管理器是Java图形用户界面(GUI)开发中的一个重要概念,特别是在使用Swing库构建应用程序时。Swing在AWT(Abstract Window Toolkit)的基础上构建,因此它也继承了AWT中的布局管理机制。布局管理器的主要...
3. GridLayout:这个布局管理器将窗口划分为等大小的网格,每个网格可以放置一个组件。所有组件都将占据相同的空间,适合创建棋盘或网格状的应用。 4. CardLayout:这种布局允许在单个容器中切换多个面板,就像信用...
"qt_布局管理器_信号与槽"这个主题涵盖了Qt中的两个核心概念:布局管理和信号与槽机制。 **布局管理器** 在Qt中,布局管理器是构建用户界面的重要工具。它们允许开发者自动调整控件的位置和大小,以适应窗口或...
流布局管理器(FlowLayout)是一种常用的布局管理器,将组件逐行定位,行内从左到右,一行排满后换行,默认对齐方式为居中对齐,不改变组件的大小,按组件原有尺寸显示组件。 边界布局管理器(BorderLayout)将整个...