安卓学习-------布局学习Linearlayout与Relativelayout

LinearLayout:

线性布局,就是所有的控件都依次排序,谁也不会覆盖谁。没有办法直接调整控件的位置和相对位置。但是,定义一个排列方向最好,横向:orientation:horizontal,纵向:orientation:vertical,可以通过margin来控制间距。

1、android:orientation:设置它内容的对其方向(横向/竖向)。

2、layout_gravity与gravity的区别:

android:layout_gravity是相对与它的父元素说的,说明元素显示在父元素的什么位置。

android:gravity是指本元素的子元素与他的对其方式。

比如说button:android:layout_gravity 表示按钮在界面上的位置。 android:gravity表示button上的字在button上的位置。

这两个属性可选的值有:top、bottom、left、right、center_vertical、fill_vertical、center_horizontal、fill_horizontal、center、fill、clip_vertical。这些属性可以多选,用|隔开。

3、

权值:

如果LinearLayout包含子LinearLayout,子LinearLayout之间的权值越大的,重要度则越小。如果有LinearLayout A包含LinearLayout C,D,C的权值为2,D的权值为1,则屏幕的2/3空间分给权值为1的D,1/3分给权值为2的C。这个让我很疑惑,为什么要反着来呢?正着来,权值越大占的空间越大不是很好吗?在LinearLayout嵌套的情况下,子LinearLayout必须要设置权值,否则默认的情况是未设置权值的子LinearLayout占据整个屏幕。

4、布局的fill_parent,wrap_content,match_parent三者的区别:

fill_parent:布满整个屏幕

wrap_content:强制性将试图扩展以显示全部内容,这个有点像自适应大小。布局的元素将根据内容改变大小。

match_parent:与fill_parent比较像,但是2.2以后就用match_parent。

5、边距:

padding:是这个控件的内容距这个控件边缘的距离。

margin:是这个控件距他的父元素的距离。

RelativeLayout:

控件的位置是相对的,下一个控件的位置依赖上一个控件。

1、以true和false为值的属性:

android:layout_centerHrizontal :水平居中

android:layout_centerVertical:垂直居中

android:layout_centerInparent :相对于父元素完全居中

android:layout_alignParentBottom:紧贴父元素的底边缘

android:layout_alignParentLeft:紧贴父元素的左边缘

android:layout_alignParentRight:紧贴父元素的右边缘

android:layout_alignParentTop:紧贴父元素的上边缘

2、值为id名的属性

layout_below:在某元素的下方

layout_above:在某元素的上方

layout_toLeftOf:在某元素的左边

layout_toRightOf:在某元素的右边

layout_alignTop:本元素的上边缘与某元素上边缘对齐

layout_alignBottom:本元素的下边缘与某元素的下边缘对齐

layout-alignLeft:本元素的左边缘与某元素的左边缘对齐

layout_alignRight:本元素的右边缘与某元素的右边缘对齐

android:layout_alignBaseline本组件和某组件的基线对齐

 android:layout_alignStart: 两个控件开始对齐
 android:layout_alignEnd:两个控件结束对齐
 android:layout_alignParentStart:子控件和父控件开始对齐
 android:layout_alignParentEnd:子控件和父控件结束对齐

3、值为像素的属性:

layout_marginBottom:本元素离某元素的底部的距离

layout_marginTop:本元素离某元素的上部的距离

layout_marginLeft:本元素离 某元素的左边的距离

layout_marginRight:本元素离某元素的右边的距离

本人新手,若有不当之处,请指教,若转载请注明出处。

转载于:https://my.oschina.net/u/3073748/blog/861088

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值