android学习笔记NO.4
2015-08-13 20:52
141 查看
昨天笔记本主板坏了,各种烦心事搞得一团糟,博客也没有接着更!不过不幸中的万幸是:在笔记本主板坏之前,将前一周的笔记上传上来了!周六要交项目,小白的我,还在一点一点看基础,亚历山大啊!
五大布局需要注意的知识点:
线性布局:
LinearLayout是线性布局控件,它包含的子控件将以横向或竖向的方式排列!
LinearLayout本身常用到的属性:
android:orientation=”vertical”
—-该属性决定它子类控件的排布方式(vertical垂直;horizontal:水平)
android:gravity=”center”
—-该属性决定他子类的xy的位置。
常用到的几个属性值:
1>center_vertical:垂直(Y轴)居中
2>center_horizontal:水平(X轴)居中
3>center:水平垂直都居中
4>right:子类控件位于当前布局的右边
5>left:子类控件位于当前布局的左边
6>bottom:子类控件位于当前布局的下面
layout_weight
使用的时候,注意layout_height的值。
当layout_height为match_parent
是当前layout_weight的反比
当layout_height为wrap_content
是当前layout_weight的正比
layout_gravity调整该布局相对父布局的位置
gravity是调整该布局中子布局的位置。
一个orientation为horizontal的LinearLayout中有一个textView,则设置TextView的 layout_gravity属性为right 不起作用 !
因为水平的LinearLayout要从左边开始依次放置布局,所以TextView的layout_gravity属性为right不起作用!
layout_alignBottom=”@+id/id1”
layout_alignBaseline=”@+id/id1”
layout_toRightOf=”@+id/id1”
相对布局里面的子布局有gravity属性。
@+id是在R.java中添加id,@id表示引用现有id。
toLeftOf是在左边,toRightOf是在右边
帧布局(FrameLayout )在这个布局中,所有的子元素都不能被指定位置的位置,他们统统放在这块区域的左上角,并且后面的子元素直接覆盖在前面的子元素之上,将前面的子元素部分或全部遮挡!
framelayout 没有gravity属性。
framelayout 如何设置前景图:使用android:foreground
absolutelayout 绝对布局:也叫坐标布局,可以直接指定子元素的绝对位置(xy)
有缺陷,不推荐使用。
由于手机屏幕尺寸差别很大,在屏幕适配上有缺陷。
absolutelayout子类控件属性:
android:layout_x
android:layout_y
TableLayout 表格布局
表格布局模型以行列的形式 管理子控件,每一行为一个tableRow的对象,当然也可以是一个其他View的对象。
tableLayout 的属性(全局属性)
android:collapseColumns=”1,2”
隐藏二三列的索引列。因为下标是从第0列开始的。必须用逗号分隔开:1,2,5
android:shrinkColumns=”1,2”
收缩二三列的索引列。因为下标是从第0列开始的。当可收缩的列太宽(内容太多)不会被挤出屏幕,列必须用逗号隔开,可以通过* 来表示收缩所有列。
一列能同时表示收缩和拉伸。
android:stretchColumns=”1,2”
拉伸二三列的索引列。因为下标是从第0列开始的。从0开始的索引列。以填满剩下的多余空白空间,列必须用逗号隔开。可以通过*来表示拉伸所有列。
0 即是第一列。
tablelayout的局部属性:内部空间所用的属性
android:layout_column=”1” 该控件显示在第2列
android:layout_span=”2” 该控件占据2列
五大布局需要注意的知识点:
线性布局:
LinearLayout是线性布局控件,它包含的子控件将以横向或竖向的方式排列!
LinearLayout本身常用到的属性:
android:orientation=”vertical”
—-该属性决定它子类控件的排布方式(vertical垂直;horizontal:水平)
android:gravity=”center”
—-该属性决定他子类的xy的位置。
常用到的几个属性值:
1>center_vertical:垂直(Y轴)居中
2>center_horizontal:水平(X轴)居中
3>center:水平垂直都居中
4>right:子类控件位于当前布局的右边
5>left:子类控件位于当前布局的左边
6>bottom:子类控件位于当前布局的下面
layout_weight
使用的时候,注意layout_height的值。
当layout_height为match_parent
是当前layout_weight的反比
当layout_height为wrap_content
是当前layout_weight的正比
layout_gravity调整该布局相对父布局的位置
gravity是调整该布局中子布局的位置。
一个orientation为horizontal的LinearLayout中有一个textView,则设置TextView的 layout_gravity属性为right 不起作用 !
因为水平的LinearLayout要从左边开始依次放置布局,所以TextView的layout_gravity属性为right不起作用!
layout_alignBottom=”@+id/id1”
layout_alignBaseline=”@+id/id1”
layout_toRightOf=”@+id/id1”
相对布局里面的子布局有gravity属性。
@+id是在R.java中添加id,@id表示引用现有id。
toLeftOf是在左边,toRightOf是在右边
帧布局(FrameLayout )在这个布局中,所有的子元素都不能被指定位置的位置,他们统统放在这块区域的左上角,并且后面的子元素直接覆盖在前面的子元素之上,将前面的子元素部分或全部遮挡!
framelayout 没有gravity属性。
framelayout 如何设置前景图:使用android:foreground
absolutelayout 绝对布局:也叫坐标布局,可以直接指定子元素的绝对位置(xy)
有缺陷,不推荐使用。
由于手机屏幕尺寸差别很大,在屏幕适配上有缺陷。
absolutelayout子类控件属性:
android:layout_x
android:layout_y
TableLayout 表格布局
表格布局模型以行列的形式 管理子控件,每一行为一个tableRow的对象,当然也可以是一个其他View的对象。
tableLayout 的属性(全局属性)
android:collapseColumns=”1,2”
隐藏二三列的索引列。因为下标是从第0列开始的。必须用逗号分隔开:1,2,5
android:shrinkColumns=”1,2”
收缩二三列的索引列。因为下标是从第0列开始的。当可收缩的列太宽(内容太多)不会被挤出屏幕,列必须用逗号隔开,可以通过* 来表示收缩所有列。
一列能同时表示收缩和拉伸。
android:stretchColumns=”1,2”
拉伸二三列的索引列。因为下标是从第0列开始的。从0开始的索引列。以填满剩下的多余空白空间,列必须用逗号隔开。可以通过*来表示拉伸所有列。
0 即是第一列。
tablelayout的局部属性:内部空间所用的属性
android:layout_column=”1” 该控件显示在第2列
android:layout_span=”2” 该控件占据2列
相关文章推荐
- Android安全小记(二)
- Android-项目开发基础—JNI与底层调用(十三)
- Android-应用开发-新特性和知识点回顾(十一)
- Android-应用开发-内容提供者(十)
- Android-应用开发-多媒体编程(九)
- HDU 5099 Comparison of Android versions【字符串+模拟】
- Android-应用开发-广播和服务(八)
- AndroidStudio制作的NinePatch无法使用,且R类标红
- Mac OS 链接Android USB
- Android Opengl 初学(画一个逐渐扩大的圆圈)
- Android相关属性的介绍:android:exported
- 磨刀不费砍柴功——Android编程中的实用快捷键
- Android-应用开发-页面跳转和数据传递(六)
- Android:关于声明文件中android:process属性说明
- Android学习笔记(三)
- android-将系统和应用程序级的屏幕亮度
- 关于 android receiver
- Android (Service、BroadcastReceiver)
- Android之使用帧动画实现自定义loading加载布局
- Android-应用开发-快速入门(一)