Android嵌套布局初步(一)
来源:互联网 发布:密码生成器软件 编辑:程序博客网 时间:2024/06/13 08:40
一、概述
Android布局使用layout中的xml文件实现,排版逻辑大体类似于div+css结构。通常在布局中,特别是手机应用的布局中,我们希望能够大块垂直分布,块内灵活布局。这样就可以使用LinearLayout的嵌套实现局部块的布局,在LinearLayout中嵌套RelativeLayout实现块内灵活布局。
二、LinearLayout
在LinearLayout中,可以通过上层linearlayout的orientation和下层linearlayout中的宽高来控制大块的位置。
三、RelativeLayout
第一类:属性值为true或false
第二类:属性值必须为id的引用名“@id/id-name”
第三类:属性值为具体的像素值,如30dip,40px
RelativeLayout的布局方式还是很灵活,甚至比div+css还好用,直接导致的问题就是。。个人感觉比div+css复杂,还要考虑到不同机型的适配问题,如果整个页面都是RelativeLayout,不知道会有多麻烦,比如中间加个控件什么的 ,改id改到蛋疼。。这还只是一个简单小项目的感受。
把RelativeLayout用在最小的范围内,就像筋和肉一样,而LinearLayout用做骨架,这样的搭配应该是最合理的。。至少目前我是这么认为的。
四、嵌套
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" android:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" > <LinearLayout android:layout_width="match_parent" android:layout_height="match_parent" android:layout_weight="1" android:background="#ffff00" android:orientation="vertical" > <RelativeLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:background="#ff6600" > <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="呵呵" /> </RelativeLayout> <RelativeLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:background="#ff6600" > <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="呵呵" /> </RelativeLayout> </LinearLayout> <LinearLayout android:layout_width="match_parent" android:layout_height="match_parent" android:layout_weight="1" android:background="#ff0000" android:orientation="vertical" > <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="horizontal" > <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_weight="1" android:background="#66ff00" android:gravity="center_horizontal" android:text="呵呵" /> <!-- android:layout_gravity 控件相对于父控件的位置 ,类似于margin --> <!-- android:gravity 控件内部元素的位置,类似于padding --> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_weight="1" android:background="#66ff00" android:gravity="center_horizontal" android:text="呵呵" /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_weight="1" android:background="#66ff00" android:gravity="center_horizontal" android:text="呵呵" /> </LinearLayout> </LinearLayout></LinearLayout>
差不多就是下面这个图的样子
0 0
- Android嵌套布局初步(一)
- Android嵌套布局初步(二)
- android Activity布局初步(二)- 嵌套布局
- Android之布局初步(一)
- Activity的布局初步(二)嵌套布局【LinearLayout、TableLayout】
- Android(四) Activity布局初步(一)
- Activity的布局初步(一)
- Activity的布局初步(一)
- Activity布局初步(一)
- Activity布局初步【一】
- android中的布局--嵌套布局
- android中的布局--嵌套布局
- android布局学习--嵌套布局
- Android学习第9课—Activity的布局初步(一)
- 动手学Android之四——布局初步(一)
- android 学习8—— Activity布局初步(一)
- Android 动态生成布局 (多层嵌套)
- Android 动态生成布局 (多层嵌套)
- SSM框架----spring MVC原理
- ucenter 单点登录
- 安卓开发之屏蔽按键抖动,连击,长按事件
- Kruskal算法模板 HDU 1233
- CSS层叠样式表
- Android嵌套布局初步(一)
- ubuntu下安装、启动和卸载SSH
- 安卓应用修改系统时间
- android 数据库详解
- lightoj 1010 - Knights in Chessboard(找规律)
- 坚持#第49天~李半仙音乐盒完成啦
- 度量学习
- 数据库分片(Sharding)与分区(Partition)的区别
- USB摄像头预览识别二维码