RelativeLayout,LinerLayout,GridLayout,FrameLayout随记
2016-05-02 18:23
218 查看
RelativeLayout:
RelativeLayout按照各子元素之间的位置关系完成布局。在此布局中的子元素里与位置相关的属性将生效。例如android:layout_below, android:layout_above等。子元素就通过这些属性和各自的ID配合指定位置关系。注意在指定位置关系时,引用的ID必须在引用之前,先被定义,否则将出现异常。RelativeLayout里常用的位置属性如下:android:layout_toLeftOf —— 该组件位于引用组件的左方 ,android:layout_toRightOf —— 该组件位于引用组件的右方,android:layout_above —— 该组件位于引用组件的上方 ,android:layout_below —— 该组件位于引用组件的下方,android:layout_alignParentLeft —— 该组件是否对齐父组件的左端,android:layout_alignParentRight
—— 该组件是否齐其父组件的右端,android:layout_alignParentTop —— 该组件是否对齐父组件的顶部 ,a ndroid:layout_alignParentBottom —— 该组件是否对齐父组件的底部 ,android:layout_centerInParent —— 该组件是否相对于父组件居中 ,android:layout_centerHorizontal —— 该组件是否横向居中 ,android:layout_centerVertical —— 该组件是否垂直居中,RelativeLayout是最灵活的一种布局结构,比较适合一些复杂界面的布局。
LinearLayout:
LinearLayout按照垂直或者水平的顺序依次排列子元素,每一个子元素都位于前一个元素之后。如果是垂直排列,那么将是一个单列的结构,每一行只会有一个元素,而不论这个元素的宽度为多少,都将占据整行空间;如果是水平排列,那么将是一个单行的结构。如果搭建两行两列的结构,通常的方式是先垂直排列两个元素,每一个元素里再包含一个LinearLayout进行水平排列。LinearLayout中的子元素属性android:layout_weight用于描述该子元素在剩余空间中占有的大小比例。当一行只有一个文本框,那么它的默认值就为0,如果一行中有两个等长的文本框,那么他们的android:layout_weight值可以是同为1。如果一行中有两个不等长的文本框,那么他们的android:layout_weight值分别为1和2,布局将两个TextView的宽度均设为wrap_content,一个权重为1,一个权重为2,权重为1的占了三分之一,权重为2的占了三分之二。布局将两个TextView的宽度均设为match_parent,一个权重为1,一个权重为2,权重为1的反而占了三分之二。
GridLayout:
GridLayout布局使用虚细线将布局划分为行、列和单元格,也支持一个控件在行、列上都有交错排列。与LinearLayout布局一样,也分为水平和垂直两种方式,默认是水平布局,一个控件挨着一个控件从左到右依次排列,但是通过指定Android:columnCount设置列数的属性后,控件会自动换行进行排列。另一方面,对于GridLayout布局中的子控件,默认按照wrap_content的方式设置其显示。如果要指定某控件显示在固定的行或列,设置该子控件的android:layout_row和android:layout_column即可。android:layout_rowSpan或者layout_columnSpan属性分别为跨行、跨列属性。FrameLayout:
FrameLayout布局中,整个界面被当成一块空白备用区域,所有的子元素都不能被指定放置的位置,它们统统放于这块区域的左上角,并且后面的子元素直接覆盖在前面的子元素之上,将前面的子元素部分和全部遮挡。相关文章推荐
- SPOJ GSS1 & GSS3&挂了的GSS5
- 大量 python 爬虫源码分享--说说 python 爬虫这件小事
- C++::STL::algorithm
- android中完全退出应用程序的方法
- SPOJ GSS1 & GSS3&挂了的GSS5
- C++第四次上机实验
- 使用javascript和ajax中的不细心!!!
- Qt VS 版本设置debugger
- 逻辑地址 线性地址 转
- 修改图片上传
- Android图片压缩终极解决方案,是的,终极,终极,终极
- receiver执行后台任务
- java中加载图片出错
- 聊一聊程序架构的故事——第一篇Gerneratie Development简介
- SharedPreferences 介绍
- 【爬虫初探】新浪微博搜索爬虫实现
- 数据结构之排序:归并排序
- c# task
- 转载——关于STM32的ADC/DAC问题汇总
- FindKth(T,i)返回树T的具有第i个最小关键字的元素。所有元素具有关键字互异的关键字。修改二叉树以平均O(logN)时间支持这种运算