Android Studio 笔记3.3 相对布局

一、前言

  1. 了解相对布局优点
  2. 熟悉相对布局常用属性
  3. 掌握线性布局嵌套相对布局
  • 如果需要在多个方向上进行布局,就要嵌套多个线性布局。如果UI足够复杂,那么从工作量和性能上都将是一场噩梦。因此引出另一种布局方式——相对布局,很多时候需要嵌套多个线性布局才能实现的布局,使用相对布局,一层就能够完成。相对布局十分灵活,可以实现复杂界面的设计,当然掌握起来比较难。

二、笔记3.3 相对布局

请添加图片描述

(一)相对布局概述

  • 顾名思义,相对布局就是让内部的 View 根据其他 View 或者 Parent 的位置来确定自己的摆放位置和尺寸。比如你买了套沙发,你告诉师傅把沙发放到客厅内,面对电视机并且和茶几平行,靠墙摆放。其中沙发就是我们的目标 View,客厅就是 Parent,电视机和茶几就是其他的 View。这样一来,就能够准确的确定出你希望摆放的位置。RelativeLayout 的原理就是这样,我们可以指定某个 View 相对于它的兄弟 View 而言的摆放位置(比如在 TextView 的左边 10 dp或者在上面 25 dp),另外也可以指定它在父布局(RelativeLayout)中的摆放位置。RelativeLayout 应该说是在 Android GUI 设计中最常用的布局方式。

1、布局特点

  • 在相对布局中,一个控件的位置取决于它和其它控件的相对关系
  • 优点:使用比较灵活
  • 缺点:复杂,掌握较难

2、继承关系图

  • RelativeLayout类是ViewGroup的子类

请添加图片描述

3、常用属性

(1)相对于父容器居中
属性 含义
layout_centerInParent 在父容器居中
layout_centerHorizontal 在父容器水平居中(true
layout_centerVertical 在父容器垂直居中
(2)相对于父容器对齐
属性 含义
layout_alignParentLeft 与父容器左对齐
layout_alignParentRight 与父容器右对齐
layout_alignParentTop 与父容器顶对齐
layout_alignParentBottom 与父容器底对齐
(3)相对于其它控件位置
属性 含义
layout_toLeftOf 在……左边
layout_toRightOf 在……右边
layout_above 在……上面
layout_below 在……下面
(4)相对于其它控件对齐
属性 含义
layout_alignLeft 与……左对齐
layout_alignRight 与……右对齐
layout_alignTop 与……顶对齐
layout_alignBottom 与……底对齐
layout_alignBaseLine 与……基线对齐
(5)标识符问题
标识符 含义
@+id/button 创建新的id(建议使用)
@id/button 引用已有的id

(二)案例演示:相对布局演示

1、创建安卓应用

  • 基于Empty Activity创建安卓应用 - RelativeLayoutDemo2
    请添加图片描述
    请添加图片描述

  • 单击【Finish】按钮请添加图片描述

2、准备图片素材

  • 将背景图片拷贝到drawable目录请添加图片描述

3、字符串资源文件

  • 字符串资源文件 - strings.xml请添加图片描述
<resources>
  • 1
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
1、Android显示GIF动画 GifView GifView 是一个为了解决android中现在没有直接显示gif的view,只能通过mediaplay来显示这个问题的项目,其用法和 ImageView一样,支持gif图片 使用方法:1-把GifView.jar加入你的项目。2-在xml中配置GifView的基本属性,GifView继承自View类,和Button、ImageView一样是一个UI控件。 如: 3-在代码中配置常用属性: // 从xml中得到GifView的句柄 gf1 = (GifView) findViewById(R.id.gif1); // 设置Gif图片源 gf1.setGifImage(R.drawable.gif1); // 添加监听器 gf1.setOnClickListener(this); // 设置显示的大小,拉伸或者压缩 gf1.setShowDimension(300, 300); // 设置加载方式:先加载后显示、边加载边显示、只显示第一帧再显示 gf1.setGifImageType(GifImageType.COVER); GifView的Jar包共有四个类: GifAction.java 观察者类,监视GIF是否加载成功 GifFrame.java 里面三个成员:当前图片、延时、下张Frame的链接。 GifDecoder.java 解码线程类 GifView.java 主类,包括常用方法,如GifView构造方法、设置图片源、延迟、绘制等。 2、Calendar.v0.5.0 是 Android 平台的一个日历显示组件。 3、CWAC EndlessAdapter 是 Android 上一个可以无限往下滑进行列表数据加载的控件。 4、Android Horizontal ListView 是 Android 上一个水平滑动的 ListView 组件。 5、Android ViewBadger 视图布局。 6、滑动刷新的ListView Android PullToRefresh 为 Android 应用提供一个向下滑动即刷新列表的功能,就两个目标文件。 7、pakerfeldt-android-viewflow 是 Android 平台上一个视图切换的效果库。ViewFlow 相当于 Android UI 部件提供水平滚动的 ViewGroup,使用 Adapter 进行条目绑定。 8、Android 导航菜单 RibbonMenu 是 Android 上的一个导航菜单组件。就三个目标文件,菜单项直接在 XML 中定义,可添加文本和图标。 9、Android的UI工具包 android-ui-utils 是一个工具包用来帮助设计和开发 Android 用户界面,包含三个单独的工具:Android Asset Studio用户界面原型模具,Android 设计预览,时常需要重复确认程序版面设计状况的 Android App 开发者,应该会爱上这个轻量级的 Java 程序:Andorid Design Preview 工具,通过 USB 连接之后,只要简单的在计算机中选取您想要显示的程序版面范围,就可将镜像结果直接显示于手机装置之上。 10、Android的ui开发类库 GreenDroid 是一个Android的ui开发类库,能够使你的Android开发更加简便和快捷。 11、Android滑动式菜单 SlidingMenu 是 Android 上实现类似 Facebook 和 Path 2.0 滑动式菜单的组件。 12、AsyncImageView 是 Android 上的一个异步从网络上获取图片并进行浏览的开源组件,可自动在本地进行缓存。该项目是 GreenDroid 的一部分。 13、仿Path按钮动画效果 PathButton 仿照Path应用首页左下角的Button动画效果写了个简单的Demo,由于数学不好,坐标总是和理想有出入,只是大致实现了动画效果,若果有人能把坐标算对,那么修改我的demo就能做成类似Path的那种动画效果!希望大家出点力帮着优化一下,并分享出来! 14、Android Intent开发包 OpenIntents Ope
Android Studio是一款用于开发Android应用程序的集成开发环境(IDE)。它提供了丰富的工具和功能,其中包括一个强大的布局编辑器,用于设计和编辑Android应用程序的用户界面。 使用Android Studio布局编辑器,您可以通过可视化界面来创建和编辑应用程序的布局。以下是使用布局编辑器的一般步骤: 1. 打开Android Studio并创建一个新的Android项目。 2. 在项目结构中,找到res文件夹,然后右键单击它并选择"New" -> "Android Resource File"。 3. 在弹出窗口中,输入文件名并选择"Layout"作为资源类型,然后点击"OK"。 4. 布局编辑器将打开,并显示一个空白的设计视图和一个XML代码视图。 5. 在设计视图中,您可以从工具栏中选择不同的UI组件(如按钮、文本框、图像等),然后将它们拖放到布局中。 6. 您可以使用属性面板来设置每个组件的属性,如大小、位置、背景颜色等。 7. 您还可以使用约束布局来定义组件之间的相对位置和大小关系,以实现灵活的自适应布局。 8. 在XML代码视图中,您可以手动编辑布局的XML代码,以更精确地控制布局和属性。 9. 您可以通过点击"Preview"按钮来预览布局在不同设备上的显示效果。 10. 一旦您完成了布局的设计和编辑,您可以保存并在应用程序的其他部分使用它。 使用Android Studio布局编辑器,您可以快速而直观地创建复杂的用户界面,并且可以在不同的设备上进行预览和调整。这使得开发Android应用程序变得更加高效和便捷。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值