专栏首页算法微时光相对布局RelativeLayout(三)

相对布局RelativeLayout(三)

image.png

目录

什么是相对布局

相对布局是通过相对定位的方式让控件出现在布局任意位置.

常见属性

相对于父元素控件布局

属性

含义

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

该元素的右边缘和某元素的的右边缘对齐

相对像素值

属性

含义

android:layout_marginBottom

底边缘的距离

android:layout_marginLeft

左边缘的距离

android:layout_marginRight

右边缘的距离

android:layout_marginTop

上边缘的距离

实战

相对于父元素控件布局

使用相对水平和相对垂直实现控件居中:

android:layout_centerHorizontal="true" android:layout_centerVertical="true"

全部配置:

<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".MainActivity">

    <RelativeLayout
        android:layout_width="368dp"
        android:layout_height="495dp"
        tools:layout_editor_absoluteX="8dp"
        tools:layout_editor_absoluteY="8dp">

        <TextView
            android:id="@+id/textView"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_centerHorizontal="true"
            android:layout_centerVertical="true"
            android:text="相对布局" />
    </RelativeLayout>
</android.support.constraint.ConstraintLayout>

执行程序:

image.png

相对于某个元素控件布局

使用和某元素的的左边缘对齐 :

android:layout_alignLeft="@id/textView"

全部配置:

<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".MainActivity">


    <RelativeLayout
        android:layout_width="368dp"
        android:layout_height="495dp"
        tools:layout_editor_absoluteX="8dp"
        tools:layout_editor_absoluteY="8dp">

        <TextView
            android:id="@+id/textView"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_centerHorizontal="true"
            android:layout_centerVertical="true"
            android:text="相对布局" />

        <TextView
            android:id="@+id/textView1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignLeft="@id/textView"

        android:text="test1" />

    </RelativeLayout>
</android.support.constraint.ConstraintLayout>

效果图:

image.png

执行程序:

image.png

相对像素值

使用左边缘距离和上边缘距离:

android:layout_marginLeft="20dp"
android:layout_marginTop="200dp"

全部配置:

<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".MainActivity">

    <RelativeLayout
        android:layout_width="368dp"
        android:layout_height="495dp"
        tools:layout_editor_absoluteX="8dp"
        tools:layout_editor_absoluteY="8dp">

        <TextView
            android:id="@+id/textView"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginLeft="20dp"
            android:layout_marginTop="200dp"
            android:text="相对布局" />

        <TextView
            android:id="@+id/textView1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignLeft="@id/textView"

        android:text="test1" />

    </RelativeLayout>
</android.support.constraint.ConstraintLayout>

效果图:

image.png

执行程序:

image.png

参考

最新Android开发视频教程(共6章)Android Studio教程(2017-2018) 19 Android 相对布局的使用(视频+笔记,从01开始点点入门) Android studio 相对布局常见属性 Android----------线性布局和相对布局的使用

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 时间选择(DatePicker和TimePicker)使用

    Android中日期选择控件-DatePicker的使用 android 开发 时间选择器TimePicker的使用

    李小白是一只喵
  • 自动完成文本框(AutoCompleteTextView)

    AutoCompleteTextView控件是Android中实现自动为完成文本框的功能,常常和Adapter搭配使用.

    李小白是一只喵
  • ListView和SimpleAdapter(图文列表)

    新添加一个资源文件list_array.xml,主要作用是为simpleAdapter添加显示规则:

    李小白是一只喵
  • Android仿京东分类效果

    本文实例为大家分享了Android仿京东分类效果展示的具体代码,供大家参考,具体内容如下

    砸漏
  • Android Listener侦听的N种写法

    Android中,View的Listener方法,在是否使用匿名类匿名对象时,有各种不同的写法。

    阳光岛主
  • 1.TabActivity、视图树、动画

    六月的雨
  • Android ScrollView实现下拉弹回动画效果

    这里设计一个自定义View,继承了ScrollView,实现可以下拉里面的内容,松手后画面弹回,这个自定义的View可以当做ScrollView来使用。

    砸漏
  • android多媒体类VideoView使用方法详解

    VideoView类将视频的显示和控制集于一身,我们可以借助它完成一个简易的视频播放器。VideoView和MediaPlayer也比较相似。

    砸漏
  • Android 自定义日期段选择控件功能(开始时间-结束时间)

    开发中碰到个需求,需要在一个空间中选择完成开始和结束时间。实现的过程走的是程序员开发的老路子,找到轮子后自己改吧改吧就成了。

    砸漏
  • Andriod Studio实现保存QQ密码功能(案例代码详解)

    对于QQ登录时保存账号和密码的功能,不仅文件存储能够实现,SharePreferences同样也可以实现,而且SharedPreferences存取数据更加简单...

    砸漏

扫码关注云+社区

领取腾讯云代金券