Android布局问题基本理解

初学Android的时候,经常由于布局名字相似,功能差不多容易弄混,今天来简单的解释一下,加深理解。主要讲RelativeLayout。


1、相对于父控件的摆放


android:layout_alignParentTop     
如果为true,将该控件的顶部与其父控件的顶部对齐

android:layout_alignParentBottom
如果为true,将该控件的底部与其父控件的底部对齐

android:layout_alignParentLeft     
如果为true,将该控件的左部与其父控件的左部对齐

android:layout_alignParentRight   
如果为true,将该控件的右部与其父控件的右部对齐

举个例子:android:layout_alignParentTop="true"  就是将这个控件与父控件的顶部对其,一般父控件为布局。


2、相对于父控件居中方式


android:layout_centerHorizontal 如果为true,将该控件的置于水平居中

android:layout_centerVertical    
如果为true,将该控件的置于垂直居中

android:layout_centerInParent  
如果为true,将该控件的置于父控件的中央

android:layout_alignWithParentIfMissing   如果对应的兄弟元素找不到的话就以父元素做参照物;

用法与上相同


3、然后是控件相对于控件的摆放


android:layout_above 将该控件的底部置于给定ID的控件之上

android:layout_below 
将该控件的底部置于给定ID的控件之下

android:layout_toLeftOf    
将该控件的右边缘与给定ID的控件左边缘对齐

android:layout_toRightOf  
将该控件的左边缘与给定ID的控件右边缘对齐

举个例子:android:layout_above="@+id/button1"  就是将这个控件置于“button1”这个控件之上。


4、控件相对于控件的摆放


android:layout_alignBaseline  将该控件的baseline与给定IDbaseline对齐

android:layout_alignTop       
将该控件的顶部边缘与给定ID的顶部边缘对齐

android:layout_alignBottom  
将该控件的底部边缘与给定ID的底部边缘对齐

android:layout_alignLeft       
将该控件的左边缘与给定ID的左边缘对齐

android:layout_alignRight     
将该控件的右边缘与给定ID的右边缘对齐

举个例子:android:layout_alignTop="@+id/button1"  就是将这个控件与“button1”这个控件的顶部边缘对其(一般用于两个控件重合或者相交,还用于在嵌套布局中的位置摆放)。

其中有必要解释一下android:layout_alignBaseline 

baseline的意思是基线,书写英语单词时为了规范书写会设有四条线,从上至下第三条就是基线。基线对齐主要是为了两个控件中显示的英文单词的基线对齐。



5、相对于父控件控件的偏移量


android:layout_marginTop     上偏移的值

android:layout_marginBottom
下偏移的值

android:layout_marginLeft
  左偏移的值

android:layout_marginRight
  右偏移的值;

举例:android:layout_marginTop="5dp"  距离顶部(与其他控件间的距离)5dp 


6、相对于控件自身的偏移量


android:paddingTop  上偏移的值

and android:paddingBottom  下偏移的值

android:paddingLeft 左偏移的值;

android:paddingRight  右偏移的值;

例子:button按钮中文字显示的位置,如果偏移量一样可是设置android:padding="5dp"(控件内部的距离)



7、控件布局

android:gravity: 相对于当前控件

   android:gravity="top"(类似android:paddingTop 的用法


android:layout_gravity:相对于父控件

  android:layout_gravity="top"(类似android:layout_marginTop  的用法


   这两个属性可选的值有:top、bottom、left、right、center_vertical、fill_vertical、center_horizontal、fill_horizontal、center、fill、clip_vertical。



总得来说,带有layout_基本都是相对于父控件,没有的就是当前控件。






  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值