Android——布局
2016-04-29 11:53
435 查看
1、 View类是所有可视化空间的基类。
2、 ViewGroup类是View类的子类,可以充当其他控件的容器
3、 几个常见的ViewGroup简介
4、 线性布局——LinearLayout
按照水平或垂直的顺序依次排列,一行N列,或N行一列。
如果想要搭建2*2的结构,先垂直排列两个元素,再在其中各添加一个LinearLayout进行横向分割。
Gravity属性可以用来设置相对于容器的对齐方式,需要设置多个值时用“|”分隔{top/bottom/left/right/center_vertical/center_horizontal/center/fill_vertical/fill_horizontal/fill}
5、 相对布局——RelativeLayout
① 只取true和false的属性(相对于父控件的对齐位置)
Layout_centerHorizontal/_centerVertical/_centerInParent/_alignParentBottom/_alighParentLeft/_alignParentTop/_alignParentRight/_alignWithParentIfMissing
②只取其他控件的id的属性(要求该id在前面声明过)
Layout_toRightOf/_toLeftOf/_above/_below/——相对位置
layout_alignTop/_alignBottom/_alignLeft/_alignRight——对齐方式
layout_marginLeft/_marginRight/_marginTop/_marginBottom——留白
6、 按表格布局——TableLayout
继承自LinearLayout,自有属性还包括setColumnCollapsed/setShrinkAllColumns/ setStretchAllColumns。设置单元格隐藏、可收缩、可拉伸。
适用于N*N的布局格式,一个TableLayout由多个TableRow组成,每个代表一行
向TableLayout中添加组件,则添加一行。想TableRow中添加组件,则添加一列。
表格中列的宽度由该列最宽单元格决定,整个表格布局的宽度占满父控件的宽度。
7、 切换卡——TabWidget类
继承自LinearLayout,自由属性还有divider/tabStripEnabled/tabStripLeft/tabStripRight
由一个TabHost存放多个Tab标签容器,再在Tab容器下添加其他空间,通过addTab方法添加新的Tab。
2、 ViewGroup类是View类的子类,可以充当其他控件的容器
3、 几个常见的ViewGroup简介
AbsoluteLayout | 绝对定位布局 | 每个元素必须制定具体位置 |
FrameLayout | 层布局 | 同PhotoShop的图层 |
LinearLayout | 线性布局 | 每个元素占一行或一列 |
RelativeLayout | 相对定位布局 | 描述元素相对其他元素位置 |
TableLayout | 表格布局 | 同HTML的表格 |
按照水平或垂直的顺序依次排列,一行N列,或N行一列。
如果想要搭建2*2的结构,先垂直排列两个元素,再在其中各添加一个LinearLayout进行横向分割。
常用属性及方法 | ||
Android:orientation | setOrientation(int) | 设置线性布局朝向,如horizontal |
Android:grabity | setGravity(int) | 设置内部元素布局方式 |
5、 相对布局——RelativeLayout
① 只取true和false的属性(相对于父控件的对齐位置)
Layout_centerHorizontal/_centerVertical/_centerInParent/_alignParentBottom/_alighParentLeft/_alignParentTop/_alignParentRight/_alignWithParentIfMissing
②只取其他控件的id的属性(要求该id在前面声明过)
Layout_toRightOf/_toLeftOf/_above/_below/——相对位置
layout_alignTop/_alignBottom/_alignLeft/_alignRight——对齐方式
layout_marginLeft/_marginRight/_marginTop/_marginBottom——留白
6、 按表格布局——TableLayout
继承自LinearLayout,自有属性还包括setColumnCollapsed/setShrinkAllColumns/ setStretchAllColumns。设置单元格隐藏、可收缩、可拉伸。
适用于N*N的布局格式,一个TableLayout由多个TableRow组成,每个代表一行
向TableLayout中添加组件,则添加一行。想TableRow中添加组件,则添加一列。
表格中列的宽度由该列最宽单元格决定,整个表格布局的宽度占满父控件的宽度。
7、 切换卡——TabWidget类
继承自LinearLayout,自由属性还有divider/tabStripEnabled/tabStripLeft/tabStripRight
由一个TabHost存放多个Tab标签容器,再在Tab容器下添加其他空间,通过addTab方法添加新的Tab。
相关文章推荐
- android view 事件传递
- Android布局的优化
- Android中ListView异步加载图片错位、重复、闪烁问题分析及解决方案
- Android FragmentManager BackStackRecord.run throwing NullPointerException
- Android实现 UDP
- Android实现RecyclerView自定义列表、点击事件以及下拉刷新
- android listview需要呈现多个布局
- Android中解决EditText放到popupWindow中,原有复制、粘贴、全选、选择功能失效问题
- android viewPager 滑动标题颜色渐变效果
- android 获取文件路径(内置sd卡和外置sd卡)。
- Android Animation
- 反射还能这么玩?
- Android录制屏幕在转出gif
- weakreference handler android莫须有的罪名
- Android 如何获取在strings里面设置的值
- AidlTokenType.import or android:layout_height="match_parent"
- Android涉及到的设计模式
- android中关于上下文菜单ContextMenu数据值的转递
- android 蓝牙设备监听广播
- Android应用的界面编程(三)--TextView及其子类