RelativeLayout 详解 之58同城

RelativeLayout

看不懂,标题的,可以耐心看完

顾名思义,里面控件的位置都是相对的,
定义好其中一个控件A的位置,然后其他的都可以相对于这个控件A或者是其已经与控件A建立相对位置关系的控件建立关系

尽量不要在相对管理里牵扯出多个控件id, 不然会牵一发,动全身的

这是网上看到的别人总结的,大家看完,心中有数, 然后记下我的3句话,就可以搞定RelativeLayout, 没耐心,可看不到下面的重点四句话

第一类:属性值为true或false
android:layout_centerHrizontal                                           水平居中
android:layout_centerVertical                                            垂直居中
android:layout_centerInparent                                           相对于父元素完全居中
android:layout_alignParentBottom                                     贴紧父元素的下边缘
android:layout_alignParentLeft                                          贴紧父元素的左边缘
android:layout_alignParentRight                                        贴紧父元素的右边缘
android:layout_alignParentTop                                          贴紧父元素的上边缘
android:layout_alignWithParentIfMissing                            如果对应的兄弟元素找不到的话就以父元素做参照物

第二类:属性值必须为id的引用名“@id/id-name”
android:layout_below                          在某元素的下方
android:layout_above                          在某元素的的上方
android:layout_toLeftOf                       在某元素的左边
android:layout_toRightOf                     在某元素的右边

android:layout_alignTop                      本元素的上边缘和某元素的的上边缘对齐
android:layout_alignLeft                      本元素的左边缘和某元素的的左边缘对齐
android:layout_alignBottom                 本元素的下边缘和某元素的的下边缘对齐
android:layout_alignRight                    本元素的右边缘和某元素的的右边缘对齐

第三类:属性值为具体的像素值,如30dip,40px
android:layout_marginBottom              离某元素底边缘的距离
android:layout_marginLeft                   离某元素左边缘的距离
android:layout_marginRight                 离某元素右边缘的距离
android:layout_marginTop                   离某元素上边缘的距离

四句话

  1. 在谁的左边或右边 :

            二个关键字搞定 : toLeft-XX toRight-XX
    
  2. 在谁的上面或下面 :

             二个单词搞定:   X-below-X   X-above-X
    
  3. 与谁谁对齐:

            一个关键词: X-alignLeft_X
    
  4. 还有一个爸爸

              X_center_X   X_parent_X 
    

注意: 我的四句话,是关键字,大家心里默默记下, 多加练习,用联想记忆

RelativeLayout布局,很简单,那么如何练习呢? 我发现最好的方式,就是用相对布局,把数字1- 10用button练习,就可以,下面,就是我做的58相对布局,大家,可以试试写一写

这里写图片描述

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:padding="10dp"
    android:layout_height="match_parent">


    <Button
        android:id="@+id/one"
        android:layout_width="45dp"
        android:layout_height="45dp"
        android:layout_centerVertical="true"
        android:background="#e61212" />

    <Button
        android:id="@+id/two"
        android:layout_width="45dp"
        android:layout_height="45dp"
        android:layout_above="@id/one"
        android:background="#e61212" />

    <Button
        android:id="@+id/three"
        android:layout_width="45dp"
        android:layout_height="45dp"
        android:layout_above="@id/two"
        android:background="#e61212" />
    <Button
        android:id="@+id/four"
        android:layout_width="45dp"
        android:layout_height="45dp"
        android:layout_above="@id/three"
        android:background="#e61212" />
    <Button
        android:id="@+id/five"
        android:layout_width="45dp"
        android:layout_height="45dp"
        android:layout_toRightOf="@id/four"
        android:layout_alignBottom="@id/four"
        android:background="#e61212" />
    <Button
        android:id="@+id/six"
        android:layout_width="45dp"
        android:layout_toRightOf="@id/five"
        android:layout_height="45dp"
        android:layout_alignBottom="@id/five"
        android:background="#e61212" />
    <Button
        android:id="@+id/seven"
        android:layout_width="45dp"
        android:layout_height="45dp"
        android:layout_toRightOf="@id/one"
        android:layout_alignBottom="@id/one"
        android:background="#e61212" />
    <Button
        android:id="@+id/eight"
        android:layout_width="45dp"
        android:layout_height="45dp"
        android:layout_toRightOf="@id/seven"
        android:layout_alignBottom="@id/seven"
        android:background="#e61212" />
    <Button
        android:id="@+id/nine"
        android:layout_width="45dp"
        android:layout_height="45dp"
        android:layout_below="@id/eight"
        android:layout_alignLeft="@id/eight"
        android:background="#e61212" />
    <Button
        android:id="@+id/ten"
        android:layout_width="45dp"
        android:layout_height="45dp"
        android:layout_below="@id/nine"
        android:layout_alignLeft="@id/nine"
        android:background="#e61212" />

    <Button
        android:id="@+id/eleven"
        android:layout_width="45dp"
        android:layout_below="@id/ten"
        android:layout_height="45dp"
        android:layout_alignLeft="@id/ten"
        android:background="#e61212" />
    <Button
        android:id="@+id/twelve"
        android:layout_width="45dp"
        android:layout_toLeftOf="@id/eleven"
        android:layout_height="45dp"
        android:layout_alignBottom="@id/eleven"
        android:background="#e61212" />
    <Button
        android:id="@+id/thirteen"
        android:layout_width="45dp"
        android:layout_toLeftOf="@id/twelve"
        android:layout_height="45dp"
        android:layout_alignBottom="@id/twelve"
        android:background="#e61212" />
    <!-- 以上是5字 相对布局>-->


    <Button
        android:id="@+id/fourteen"
        android:layout_width="45dp"
        android:layout_centerInParent="true"
        android:layout_height="45dp"
        android:background="#e61212" />
    <Button
        android:id="@+id/fifteen"
        android:layout_width="45dp"
        android:layout_height="45dp"
        android:layout_above="@id/fourteen"
        android:layout_alignLeft="@id/fourteen"
        android:background="#e61212" />
    <Button
        android:id="@+id/sixteen"
        android:layout_width="45dp"
        android:layout_height="45dp"
        android:layout_above="@id/fifteen"
        android:layout_alignLeft="@id/fifteen"
        android:background="#e61212" />
    <Button
        android:id="@+id/seventeen"
        android:layout_width="45dp"
        android:layout_height="45dp"
        android:layout_above="@id/sixteen"
        android:layout_alignLeft="@id/sixteen"
        android:background="#e61212" />
    <Button
        android:id="@+id/eighteen"
        android:layout_width="45dp"
        android:layout_height="45dp"
        android:layout_alignBottom="@id/seventeen"
        android:layout_toRightOf="@id/seventeen"
        android:background="#e61212" />
    <Button
        android:id="@+id/nineteen"
        android:layout_width="45dp"
        android:layout_height="45dp"
        android:layout_alignBottom="@id/eighteen"
        android:layout_toRightOf="@id/eighteen"
        android:background="#e61212" />
    <Button
        android:id="@+id/twenty"
        android:layout_width="45dp"
        android:layout_height="45dp"
        android:layout_toRightOf="@id/nineteen"
        android:layout_alignBottom="@id/nineteen"
        android:background="#e61212" />
    <Button
        android:id="@+id/oone"
        android:layout_width="45dp"
        android:layout_height="45dp"
        android:layout_below="@id/twenty"
        android:layout_alignLeft="@id/twenty"
        android:background="#e61212" />

    <Button
        android:id="@+id/otwo"
        android:layout_width="45dp"
        android:layout_height="45dp"
        android:layout_below="@id/oone"
        android:layout_alignLeft="@id/oone"
        android:background="#e61212" />

    <Button
        android:id="@+id/othree"
        android:layout_width="45dp"
        android:layout_height="45dp"
        android:layout_below="@id/otwo"
        android:layout_alignLeft="@id/otwo"
        android:background="#e61212" />
    <Button
        android:id="@+id/ofour"
        android:layout_width="45dp"
        android:layout_height="45dp"
        android:layout_toLeftOf="@id/othree"
        android:layout_alignTop="@id/othree"
        android:background="#e61212" />
    <Button
        android:id="@+id/ofive"
        android:layout_width="45dp"
        android:layout_height="45dp"
        android:layout_toLeftOf="@id/ofour"
        android:layout_alignTop="@id/ofour"
        android:background="#e61212" />
    <Button
    android:id="@+id/osix"
    android:layout_width="45dp"
    android:layout_below="@id/fourteen"
    android:layout_height="45dp"
    android:layout_alignLeft="@id/fourteen"
    android:background="#e61212" />
    <Button
        android:id="@+id/oseven"
        android:layout_width="45dp"
        android:layout_below="@id/osix"
        android:layout_height="45dp"
        android:layout_alignLeft="@id/osix"
        android:background="#e61212" />
    <Button
        android:id="@+id/oeight"
        android:layout_width="45dp"
        android:layout_below="@id/oseven"
        android:layout_height="45dp"
        android:layout_alignLeft="@id/oseven"
        android:background="#e61212" />
    <Button
        android:id="@+id/onine"
        android:layout_width="45dp"
        android:layout_height="45dp"
        android:layout_toRightOf="@id/oeight"
        android:layout_alignBottom="@id/oeight"
        android:background="#e61212" />
    <Button
        android:id="@+id/oten"
        android:layout_width="45dp"
        android:layout_height="45dp"
        android:layout_toRightOf="@id/onine"
        android:layout_alignBottom="@id/onine"
        android:background="#e61212" />
    <Button
        android:id="@+id/oeleven"
        android:layout_width="45dp"
        android:layout_height="45dp"
        android:layout_toRightOf="@id/oten"
        android:layout_alignBottom="@id/oten"
        android:background="#e61212" />
    <Button
        android:id="@+id/otwelve"
        android:layout_width="45dp"
        android:layout_height="45dp"
        android:layout_above="@id/oeleven"
        android:layout_alignLeft="@id/oeleven"
        android:background="#e61212" />
    <Button
        android:id="@+id/othirteen"
        android:layout_width="45dp"
        android:layout_height="45dp"
        android:layout_above="@id/otwelve"
        android:layout_alignLeft="@id/otwelve"
        android:background="#e61212" />
</RelativeLayout>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值