在千峰的学习--Android第一阶段

来源:互联网 发布:麻将万能牌算法 编辑:程序博客网 时间:2024/03/29 15:53

布局管理器

概括:五大布局LinearLayout(线性布局) RelativeLayout(相对布局)FrameLayout(帧布局)AbsoluteLayout(绝对布局) TableLayout(表格布局)

1.1LinearLayout—--跟Html中的div有点像

常用属性解释:

Android:layout_width:

1.    当前的控件或者布局的宽(如果说是最外层的节点,它的父控件就是手机屏幕,如果不是的,那么它的父控件的就是父节点)

layout_height:

2.    当前的控件或者布局的高

注意:控件或者布局的必须要写的两个属性:宽,

 

match_parent:

匹配父控件  父控件有多宽,当前的布局或者控件就有多宽

wrap_content:内容包裹   控件或者布局里的内容有多宽多高,那么控件就有多宽多高

fill_parent:和match_parent效果一样。被match_parent替代了,所以基本不用这

 

宽高度属性:还可以是常量值  单位:dp

Padding—内边距

android:paddingBottom:布局或控件的下边缘距离里面的控件的距离

android:paddingLeft:布局或控件的左边缘距离里面的控件的距离

android:paddingRight:布局或控件的右边缘距离里面的控件的距离

android:paddingTop:布局或控件的上边缘距离里面的控件的距离

android:padding:上下左右的内边距

padding往往可以使按钮更加好友,一定程度上调整按钮大小

@dimen/activity_vertical_margin:距离值是去引用res/values/dinems.xml文件下名叫activity_vertical_margin的属性值

android:orientation:---垂直或者水平布局

线性布局的方向属性

   vertical:垂直方向    水平方向就只能放一个子控件或者子布局

   horizontal:水平方向  垂直方向只能放一个子控件或者子布局

 

android:background:背景颜色

   android:id:给控件或者布局的唯一标识的id。声明了这个属性之后,这个控件就在R.java文件中的id类中生成一个id,通过这个id

访问到控件、

Weight--权重

android:layout_weight:
权重,按照比例分配剩下的空间

 

权重相当于统一父键下的所有元素的weight值之和除以相当因元素所得值而确认当前元素所占比例

:比如2个TextView的width =”0dp”weight=”1” TextView2 width=”0dp” weight=”2” 那么就是T1占所属父类的3分之1,剩下3分之2给T2

gravity –控件重力

android:gravity:布局或者控件内部的对其方式    站在父控件的角度

       android:layout_gravity:子控件在布局中的对其方式   站在子控件的角度

       center:居中

       center_horizontal:水平方向居中

       center_vertical:垂直方法居中

例如:

灰色的Text中的Grivity=”right”所以其中的内容就是靠左

Margin:--兄弟控件相对边距

Left和左边的相距

Right和右边的相距

单位:dp

自我总结:

在<LinearLayout></LinearLayout>中的属性必须给它的长宽高赋值,然后注意它是竖直vertical还是水平horizontal ,android:orientation="horizontal",最常用的属性石:width,height,weight(用来分同一列或者同一行中的LinearLaout的大小:比如1份用户,2份用户框中填写密码,还有统一LinearLayout中的控件距离用Margin来调距离,单位dp。

1.2       RelativeLayout---相对布局:拼接的感觉

   layout_margin:外边距

   layout_padding:内边距

   

    针对兄弟控件

android:layout_toRightOf

:放置xxx(@id/textView1)的右边 

         android:layout_below:放置xxx(@id/textView1)的下边

         android:layout_above:放置xxx(@id/textView1)的上边

         android:layout_toLeftOf:放置xxx(@id/textView1)的左边

        

android:layout_alignTop:

和xxx控件的上边对齐

         android:layout_alignBottom:和xxx控件的下边对齐

         android:layout_alignLeft:和xxx控件的左边对齐

         android:layout_alignRight:和xxx控件的右边对齐

         android:layout_alignBaseline:基线对齐

centerHorizontal="true" 水平居中对齐

自我总结:

和LinearLayout不同的是它有align和below等专属属性


1.3FrameLayout—覆盖性布局帧布局


覆盖性布局





0 0
原创粉丝点击