相对布局

来源:互联网 发布:算法设计与分析郑晓明 编辑:程序博客网 时间:2024/04/27 13:51

设有两个控件one和two,以控件one为基准。由于代码比较简单就不贴了,直接上效果图。

一、第一组:将控件two放在控件one的上、下、左、右、开始、结束。

        android:layout_below=""
        android:layout_above=""
        android:layout_toLeftOf=""
        android:layout_toRightOf=""
        android:layout_toStartOf="" 开始
        android:layout_toEndOf="" 结束

由于one控件的位置固定不做变动,two控件在它上方和左边的位置就无法显示出来,效果是只有one控件,不再演示。

图一:android:layout_above 


图二:android:layout_toRightOf 


图三:android:layout_toEndOf(可以看出效果和layout_toRightOf一样,类似layout_toStartOf和layout_toLeftOf效果一样)


二、第二组:align是“对齐”的意思。将控件two和控件one的上边、下边、左边、右边对齐。

android:layout_alignLeft=""左边对齐
        android:layout_alignRight="" 右边对齐
        android:layout_alignTop="" 上边对齐
        android:layout_alignBottom="" 下边对齐

图一:android:layout_alignLeft

 

图二:android:layout_alignBottom(底边对齐)

  
三、第三组 :将控件two和父控件(认为布局也是控件)的顶部、底部、左边、右边对齐 。将控件two和控件one的基线对齐
       

android:layout_alignParentLeft=""和父控件的左边对齐

        android:layout_alignParentRight="" 和父控件的右边对齐
        android:layout_alignParentTop="" 和父控件的顶部对齐
        android:layout_alignParentBottom="" 和父控件的底部对齐

android:layout_alignBaseline="" 控件two和控件one的基线对齐



图一:android:layout_alignParentLeft:

图二:android:layout_alignParentBottom


图三:android:layout_alignBaseline:图中绿色的水平线就是基线,为了更清楚的显示基线,对Two控件还添加了android:layout_toRightOf属性。



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


四、第四组:中心对齐。值为true/false        
        android:layout_centerInParent="" 父控件中心对齐
        android:layout_centerHorizontal="" 水平中兴对齐
        android:layout_centerVertical="" 垂直中兴对齐


图一:android:layout_centerInParent: 

           

图二:android:layout_centerHorizontal:   

   

图三:android:layout_centerVertical:


五、第五组:android4.2新增属性。控件one和控件two开始对齐、结束对齐。控件one和父控件开始对齐、结束对齐。
        android:layout_alignStart="" 两个控件开始对齐
        android:layout_alignEnd="" 两个控件结束对齐
        android:layout_alignParentStart="" 子控件和父控件开始对齐
        android:layout_alignParentEnd="" 子控件和父控件结束对齐

为了便于显示效果,在显示layout_alignStart和layout_alignEnd属性时,为Two控件添加了layout_above属性

图一:android:layout_alignStart:

 

图二:android:layout_alignEnd: 

   

图三:android:layout_alignParentStart: 


图四:android:layout_alignParentEnd

0 0
原创粉丝点击