Android移动开发基础

第二章 Android常见页面布局

2.1 View控件

ViewGroup作为盛装界面的控件,可以包含普通的View控件,也可以包含ViewGroup容器
Android应用程序的每个界面必须且只有一个ViewGroup容器

2.2 界面布局编写方式

2.2.1 在XML布局文件中编写布局
放在res/layout文件夹中

在这里插入图片描述
在这里插入图片描述

2.2.2 在Java代码中编写布局

RelativeLayout relativeLayout=new RelativeLayout(this);
RelativeLaout.LayoutParams=new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.WRAP_CONTENT,RelativeLayout.LayoutParams.WRAP_CONTENT);
params.addRule(RelativeLayout.LayoutParams.CENTER_IN_PARENT);
TextView textView=new TextView(this);
textView.setText("Java代码实现页面布局");
textView.setTextColor("Color.RED");
textView.setTextSize(18);
relativeLayout.addView(textView,params);
setContentView(relativeLayout);

2.3 界面布局中的通用属性

Android四种常用布局:
线性布局(LinearLayout)、相对布局(RelativeLayout)、表格布局(TableLayout)、帧布局(FrameLayout)

(1)android:id int类型
用于设置当前布局唯一标识,在XML布局文件中通过 @+id/属性名称 定义的
(2)android:layout_width
设置布局的宽度,可以是具体尺寸,也可以是系统定义的值
系统定义的值:
fill_parent:表示该布局的宽度与父容器(从根元素讲是屏幕)的宽度相同
match_parent:与fill_parent作用相同,从Android2.2.0开始推荐使用 match_parent
wrap_content:表示该布局的宽度恰好能包裹他的内容
在这里插入图片描述
在这里插入图片描述(3)android:layout_height设置布局的高度,可以是具体尺寸,也可以是系统定义的值
系统定义的值:
fill_parent:该布局的高度与父容器的高度相同
match_parent:与fill_parent作用相同,从Android2.2.0开始推荐使用 match_parent
wrap_content:该布局的高度恰好能包裹它的内容
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

(4)android:background
设置布局背景,可以使用图片资源,也可以使用颜色资源
图片资源:
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
颜色资源:
(5)android:layout_margin
设置当前布局与屏幕边界、周围布局或控件的距离,具体的尺寸
在这里插入图片描述

2.4线性布局

水平或竖直排列
(1)android:orientation
horizontal 控件从上到下水平排列
vertical:控件从左到右竖直排列
(2)android:layout_weight
权值,所占比例大小

2.5 相对布局

通过相对定位的方式定位子控件

属性名称 功能描述
android:layout_centerInParent:设置当前控件位于父布局的中央位置
android:layout_centerVertical :设置当前控件位于父布局的垂直居中位置
android:layout_centerHoriontal:设置当前控件位于父布局的水平居中位置
android:layout_above:设置当前控件位于某控件上方
android:layout_below:设置当前控件位于某控件下方
android:layout_toRightOf:设置当前控件位于某控件右侧
android:layout_toLeftOf:设置当前控件位于某控件左侧
android:layout_alignParentTop:设置当前控件是否与父控件顶端对齐
android:layout_alignParentLeft:设置当前控件是否与父控件左侧对其
android:layout_alignParentRight:设置当前控件是否与父控件右侧对其
android:layout_alignParentBotton:设置当前控件是否与父控件底端对齐
android:layout_alignTop:设置当前控件的上边界与某控件的上边界对其
android:layout_alignBottom:设置当前控件的下边界与某控件的下边界对其
android:layout_alignLeft:设置当前控件的左边界与某控件的左边界对其
android:layout_alignRight:设置当前控件的右边界与某控件的右边界对其

2.6表格布局(TableLayout)

采用行、列的形式来管理控件,用TableRow控制表格的行数
常用属性
android:stretchColumns:设置可拉伸的列,如:android:stretchColumns="0"第一 列可拉伸
android:shrinkColumns:可收缩的列,如:android:shrinkColunmns="1,2"第2,3列可收缩
android:collapseColumns:可隐藏的列,如:android:collapseColumns="1"第二列可隐藏
android:layout_column:设置该控件显示的位置,如:android:layout_column=“1”,在第二个位置显示
android:layout_span:该控件占据几列,默认为1列

网格布局(GridLayout)
与TableLayout类似,自定义行、列数量;可直接设置控件位于某行某列;可设置控件横跨几行或几列
android:rowCount
android:columnCount
android:layout_row
android:layout_column
android:layout_rowSpan
android:columnSpan

2.7帧布局

在屏幕上创建一块空白区域,添加到该区域中的每个子控件占一帧,这些帧会一个一个叠加在一起
两个特殊属性:
android:foreground:设置FrameLayout容器的前景图像(始终在所有控件之上)
android:foregroundGravity:设置前景图像显示的位置

习题

TableLayout可以通过TableRow控制表格的行数

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值