1.相对布局
相对布局由RelativeLayout代表,相对布局容器内子组件的位置总是相对兄弟组件、父容器来决定的,因此这种布局方式被称为相对布局。
如果A组件的位置是由B组件的位置来决定的,Android要求先定义B组件,再顶定义A组件。
RelativeLayout的XML属性及相关方法说明
XML属性 |
相关方法 |
说明 |
android:gravity |
setGravity(int) |
设置该布局容器内部各子组件的对齐方式 |
android:ignoreGravity |
setIgnoreGravity(int) |
设置哪个组件不受gravity组件的影响 |
RelativeLayout.LayoutParams里只能设为boolean值得属性
属性 |
说明 |
android:layout_centerHorizontal |
控制该子组件是否位于布局容器的水平居中位置 |
android:layout_centerVertical |
控制该子组件是否位于布局容器的垂直居中位置 |
android:layout_Inparent |
控制该子组件是否位于布局容器的中央位置 |
android:layout_alignParentBottom |
控制该子组件是否位于布局容器低端对齐 |
android:layout_alignParentLeft |
控制该子组件是否位于布局容器左边对齐 |
android:layout_alignParentRight
|
控制该子组件是否位于布局容器右边对齐 |
android:layout_alignParentTop |
控制该子组件是否位于布局容器顶端对齐 |
RelativeLayout.LayoutParams里只能设为其他UI组件ID的属性
XML属性 |
说明 |
android:layout_toRightOf |
控制该子组件位于给出ID组件的右侧 |
android:layout_toLeftOf |
控制该子组件位于给出ID组件的左侧 |
android:layout_above |
控制该子组件位于给出ID组件的上方 |
android:layout_below |
控制该子组件位于给出ID组件的下方 |
android:layout_alignTop |
控制该子组件位于给出ID组件的上边界对齐 |
android:layout_alignBottom |
控制该子组件位于给出ID组件的下边界对齐 |
android:layout_alignLeft |
控制该子组件位于给出ID组件的左边界对齐 |
android:layout_alignRight |
控制该子组件位于给出ID组件的右边界对齐 |
展示梅花布局效果
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<!--定义该组件位于父容器中间 -->
<TextView android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:id="@+id/rview01"
android:layout_centerInParent="true"
android:background="@drawable/leaf">
</TextView>
<!-- 定义该组件位于rview01组件的上方 -->
<TextView android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:id="@+id/rview02"
android:background="@drawable/leaf"
android:layout_above="@+id/rview01"
android:layout_alignLeft="@+id/rview01">
</TextView>
<!-- 定义该组件位于rview01组件的下方 -->
<TextView android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:id="@+id/rview03"
android:background="@drawable/leaf"
android:layout_below="@+id/rview01"
android:layout_alignLeft="@+id/rview01">
</TextView>
<!-- 定义该组件位于rview01组件的左边 -->
<TextView android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:id="@+id/rview04"
android:background="@drawable/leaf"
android:layout_toLeftOf="@+id/rview01"
android:layout_alignTop="@+id/rview01" >
</TextView>
<!-- 定义该组件位于rview01组件的右边 -->
<TextView android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:id="@+id/rview05"
android:background="@drawable/leaf"
android:layout_toRightOf="@+id/rview01"
android:layout_alignTop="@+id/rview01">
</TextView>
</RelativeLayout>
效果图:
2.绝对布局
绝对布局由AbsoluteLayout代表,Android不提供如何布局控制,而是由开发人员自己通过X坐标,Y坐标来控制组件的位置。
XML属性说明
XML属性 |
说明 |
android:layout_x |
指定该子组件的X坐标 |
android:layout_y |
指定该子组件的Y坐标 |
Android中一般支持以下常用的距离单位
px(像素):每个px对应屏幕上的一个点。
dip或dp(device independent pixels,设备独立像素):一种及与屏幕密度的抽象单位。 在每英寸160点的显示器上,1dip=1px,但随着屏幕密度的改变,dip与px的换算会发生改变。
sp(scaled pixels,比例像素):主要处理字体的大小,可以根据用户的字体大小首选项进行缩放
in(英寸):标准长度单位
mm(毫米):标准长度单位
pt(磅):标准长度单位,1/72英寸
登录界面
<?xml version="1.0" encoding="utf-8"?>
<AbsoluteLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<!-- 定义一个文本框,使用绝对定位 -->
<TextView android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:layout_x="20dip"
android:layout_y="20dip"
android:text="用户名:">
</TextView>
<EditText android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:layout_x="80dip"
android:layout_y="15dip"
android:width="200px">
</EditText>
<TextView android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:layout_x="20dip"
android:layout_y="80dip"
android:text="密码:">
</TextView>
<EditText android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:layout_x="80dip"
android:layout_y="75dip"
android:password="true"
android:width="200px">
</EditText>
<Button android:layout_x="130dip"
android:layout_y="135dip"
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:text="登录"/>
</AbsoluteLayout>
效果图
本人开了个充值淘宝网店。有需要的朋友请访问的店铺并拍下所充值的话费,
本店已加入消费保障服务计划,货源来源于淘宝充值平台,安全可靠便捷,
支付过后立即到账
http://xiaowen168.taobao.com
- 大小: 7.9 KB
- 大小: 6.5 KB
分享到:
相关推荐
#### 二、AWT提供的布局管理器类型 AWT提供了五种基本类型的布局管理器,每一种都有其独特的特性和应用场景: 1. **BorderLayout**:这是一种非常常用的布局管理器,它将容器划分为五个区域:北、南、东、西和中心...
在Java Swing或Android开发中,布局管理器是创建用户界面不可或缺的部分,它们负责安排和定位组件,使得界面在不同屏幕尺寸和分辨率下都能保持良好的视觉效果。事件处理代码则涉及用户与应用程序之间的交互,确保当...
GridLayout是最常用的布局管理器之一,它将父组件划分为一个二维网格,子组件可以占据一个或多个单元格。GridLayout通过`numColumns`属性确定网格的列数,同时通过`makeColumnsEqualWidth`属性可以控制所有列是否...
在Android开发中,布局管理器是构建用户界面的关键组成部分,它们负责组织和定位视图(View)或视图组(ViewGroup)。本篇学习笔记主要探讨的是如何在Android应用中进行布局管理器的嵌套,这是一项提升界面复杂性和...
### Swing常见布局管理器总结 #### 1. BorderLayout - 边界布局管理器 边界布局管理器(`BorderLayout`)是一种非常常见的布局管理器,主要用于处理容器内组件的定位,将其分布在容器的五个基本区域:北(North)...
实验指导文档“实验二 布局管理器及简单控件的使用.doc”会详细讲解如何在实际项目中应用上述概念。同时,“作业完成版.doc”可能是实验的完成情况记录或解答,包含了对实验内容的理解和应用。 通过这个实验,...
"qt_布局管理器_信号与槽"这个主题涵盖了Qt中的两个核心概念:布局管理和信号与槽机制。 **布局管理器** 在Qt中,布局管理器是构建用户界面的重要工具。它们允许开发者自动调整控件的位置和大小,以适应窗口或...
本文将以“黑莓学习笔记之二--布局管理器Manager”为主题,深入探讨黑莓平台上的布局管理器及其使用技巧。 黑莓操作系统(BlackBerry OS)提供了一套强大的布局管理工具,称为Manager类,用于组织和控制应用程序的...
MFC中默认的布局管理器包括CLayoutView、CFormView和CDialog等,它们通常依赖于窗口的尺寸改变消息来调整控件的位置和大小。然而,这些默认的布局管理方式可能无法满足复杂或精细的界面设计需求,尤其是在需要类似...
Android Studio 之布局管理器之间的互相嵌套 Android Studio 中的布局管理器是指用于安排 UI 组件的容器,它们可以单独使用,也可以互相嵌套以满足复杂的布局需求。在本文中,我们将探讨 Android Studio 中布局...
在Android开发中,表格布局管理器(TableLayout)是一种常用且强大的组件,它允许开发者创建类似于HTML中的表格的布局。TableLayout是LinearLayout的扩展,它通过行和列的方式来组织子视图(Views)。本篇学习笔记将...
this.setTitle("使用流布局管理器"); //设置窗口名称 jp.setLayout(new FlowLayout()); //设置面板的布局为流布局 jp.add(jb1); //将按钮添加到面板中 jp.add(jb2); jp.add(jb3); jp.add...
二、 线性布局管理器的使用方法 要使用线性布局管理器,需要在 XML 布局文件中添加 `LinearLayout` 元素,并设置其属性。例如: ```xml xmlns:android="http://schemas.android.com/apk/res/android" android:...
Java Swing 组件布局管理器中有多种布局管理器,今天我们主要介绍 FlowLayout(流式布局),它是最简单、最基础的一个布局管理器。 FlowLayout 也称为流式布局,它的特点是内部控件像水流一样,从前到后按顺序水平...
在Qt Creator中,布局管理器是构建用户界面(UI)时不可或缺的一部分,它使得控件能够在窗口中自动调整位置和大小,以适应不同分辨率或窗口尺寸的变化。本篇主要介绍了垂直布局管理器的使用,同时也提及了QSplitter...
但当需要更复杂、更动态的布局时,可能需要考虑其他布局管理器。 总的来说,GridLayout是Android开发中的一个重要工具,了解并熟练掌握其用法对于提升应用的界面设计和用户体验有着积极的作用。通过实践和探索,...
应用表格布局管理器实现喜马拉雅的用户登录页面 在 Android 开发中,表格布局管理器是一个非常重要的组件,它可以帮助我们快速地创建复杂的用户界面。在本实验中,我们将使用表格布局管理器来实现喜马拉雅的用户...
应用帧布局管理器居中显示层叠的正方形 在 Android 开发中,FrameLayout 是一个常用的布局管理器,用于管理屏幕上的控件布局。今天,我们将学习如何使用 FrameLayout 实现居中的显示层叠的正方形实验。 知识点一:...
在Android开发中,布局管理是构建用户界面的关键部分。它涉及到如何组织和排列应用程序中的视图组件,以创建用户友好的交互式界面。本篇将深入探讨Android布局管理的各个方面,包括基本布局、布局属性、嵌套布局以及...