一、布局的介绍:【了解】
1、一共有六种布局,都是ViewGroup的子类。分别是AbsoluteLayout、RelativeLayout、LinearLayout、FrameLayout、TableLayout、GridLayout.
而TableLayout是LinearLayout的子类。(中文分别是:绝对布局、相对布局、线性布局、帧布局、表格布局、网格布局)
2、在2.2操作系统中将AbsoluteLayout过期。而目前FrameLayout、TableLayout也逐渐被过去。只推荐使用RelativeLayout、LinearLayout两种布局。
二、LinearLayout:【掌握】
(一)、概念:线性布局控制其中的控件或组件横向或纵向排列。在线性布局布局中,每一行或每一列只能放一个控件。并且线性布局不会换行。当控件排列到窗体边缘,后面的控件就被隐藏,而不会显示出来。
线性布局的默认方向是水平方向(Horizontal)。
(二)、属性:
1.android:orienttation 定义布局内控件或组件的排列方式
可选项:vertical 、 horizontal
2.android:width 定义控件的宽度
可选项:fill_parent / match_parent/ wrap_content
备注:fill_parent / match_parent的效果完全一致,都是填充整个父控件。但是自2.2版本开始推荐使用match_parent 。wrap_content指的是该控件的宽度正好包裹内容物。
3.android:height 定义控件的高度
可选项:fill_parent / match_parent/ wrap_content
备注:fill_parent / match_parent的效果完全一致,都是高度填充整个父控件。wrap_content指的是该控件的高度正好包裹内容物。
4.android:layout_id 设置控件的id。这样就可以在R.java中自动生成相应的值,在程序中通过findViewById就可以调用。
设置id的格式为:android:id = "@+id/id的名字"
5.android:background 设置控件的背景颜色或背景图片
例如:android:background="#ffffff"
android:background="@drawable/图片名称"
【备注:】
颜色有RGB颜色格式和ARGB格式。RGB是红绿蓝三原色。而ARGB是带alpha的三原色,即有透明度的三原色。
#FFFFFF 代表白色
#000000 黑色
#FFFFFFFF 完全不透明
#00FFFFFF 完全透明
#88FFFFFF 半透明
6.android:layout_weight 设置控件的权重。即各控件在水平或者垂直方向上平均分配。
备注:如果是水平方向设置权重,要将android:layout_width设置为0dp,如果是垂直方向上使用权重,要将android:layout_height设置为0dp。否则权重容易受到高度或宽度的干扰而出现偏差。
7.android:gravity 该属性用来控制该View的内容物的位置。
如果该属性是定义在布局节点中,则该布局中所有控件的位置都受到这个属性的控制。
如果该属性出现在Button、TextView、EditText等控件中,则用来控制这些控件上的文字的位置。
可选项有:top、bottom、left、right、center_vertical、fill_vertical 、 center、fill等等。
【备注:】本属性与android:layout_gravity不同。
8.android:layout_gravity 该属性用于设置控件相对于容器的对齐方式。
可选项有:top、bottom、left、right、center_vertical、fill_vertical 、 center、fill等等。
这些可选项中不是适用于每一种布局。在垂直线性布局中,android:gravity为bottom不起作用;而水平线性布局中,android:gravity为right不起作用。
【备注:】而本属性是android:layout_gravity属性,与 android:gravity 属性不同。
三、RelativeLayout:【掌握】
(一)、概念:指按着控件之间的相对位置来进行布局。
(二)、属性:分成三大组。
1.第一组:指兄弟控件之间的相对位置。该组属性的值是另一个控件的id。
•
layout_toRightOf 该控件在哪个控件的右侧
•
layout_toLeftOf 该控件在哪个控件的左侧
•
layout_above 该控件在哪个控件的上侧
•
layout_below 该控件在哪个控件的下侧
2.第二组:指兄弟控件之间的对齐关系。该组属性的值是另一个控件的id。
•
layout_alignRight 该控件与哪个控件的右对齐
•
layout_alignLeft 该控件与哪个控件的左对齐
•
layout_alignTop 该控件与哪个控件的顶对齐
•
layout_alignBottom 该控件与哪个控件的底对齐
3.第三组:指控件与父布局之间的对齐关系。该组属性的值是true或者false。
•
layout_alignParentRight 该控件与父布局控件的右对齐吗?
•
layout_alignParentLeft 该控件与父布局控件的左对齐吗?
•
layout_alignParentTop 该控件与父布局控件的顶端对齐吗?
•
layout_alignParentBottom 该控件与父布局控件的底部对齐吗?
•
layout_centerInParent 该控件位于父布局控件的中心位置吗?
•
layout_centerVertical 该控件位于父布局控件的垂直中心位置吗?
•
layout_centerHorizontal 该控件位于父布局控件的水平中心位置吗?
四、TextView 【掌握】
(一)、 概念:文本框控件 (用于在屏幕上显示文本)。EditText是TextView的子类,文本编辑框,在屏幕上显示可编辑的文本框。
(二)、属性:
1、andorid:text 设置文本的内容
2、 android:textColor 设置文本的颜色
3、 android:textSize 设置文本的字体大小
4、andorid:height 设置文本的高度,以像素为单位
5、 android:width 设置文本的宽度,以像素为单位
6、 android:inputType 设置文本的类型。例如是普通文本,还是emial,passworid,数字等等。
7、 android:singleLine 设置文本是否是单行显示。
android linearlayout动态添加子视图并设置id linearlayout的子类
转载本文章为转载内容,我们尊重原作者对文章享有的著作权。如有内容错误或侵权问题,欢迎原作者联系我们进行内容更正或删除文章。
提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
如何在Odoo中利用SQL视图创建动态视图
odoo sql 视图
SQL 数据 菜单项 -
Android Webview内嵌HTML使用Echarts画图并动态传值
Android Webview内嵌HTML使用Echarts画图并动态传值
Android Webview html echarts 动态传值 -
LinearLayout 子元素权重 linearlayout的子类
1:简介 linearlayout顾名思义即是线性布局,只能是垂直布局和水平布局,按照相对位置来排列子元素,如果linearlayout不能包含全部的子元素,那么此时超出的部分将消失。 android:orientation=“vertical”表示此linearlayout的子元素将会是以
LinearLayout 子元素权重 布局 LinearLayout android xml