首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

带你领略 ConstraintLayout 1.1 的新功能前言带你领略 ConstraintLayout 1.1 的新功能

带你领略 ConstraintLayout 1.1 的新功能 约束布局(ConstraintLayout)通过使用 Android Studio 中的可视化编辑器来为您生成绝大多数的 UI,进而达到简化...在 1.1 版本中,我们已经修复了链条的一些问题,并使它们能够处理更多的视图。您可以通过在两边添加约束来生成一个链条。例如在下面这个动画中,每个视图之间都有一个约束。 ?...在布置国际化字符串或显示用户生成的无法预测大小的内容时,屏障非常有用。 ? image 屏障允许您通过几个视图来创建一个约束。 屏障将始终将自己置于虚拟群组之外,并且您可以使用它来限制其他视图。...在下面的示例中,我们将标记 profile_name 和 profile_image 以供 id 配置文件引用。 当您有多个需要显示或陈列在一起的元素时,这将很有用。...如果你想尝试试验性的优化上述中的 dimensions 和 chains,你可以在 ConstraintLayout 中通过如下代码来启用它们: android.support.constraint.ConstraintLayout

1.7K20
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    例说 Constraint Layout:初探

    如果是播动画时发生这个问题,用户就会看到明显的卡顿了。这也是为什么我们常常说,尽量不要用 RL 作为嵌套层数很多的布局的父容器。...这只是 CL 增加的能力中很小的一部分,却增加了不少灵活性和可控性。而更难得的是,这是在性能提升的同时做到的! 3....ConstraintLayout 是一个向前兼容的、独立成包的 Support 库,最早可以兼容至 Android 2.3(API 9,姜饼版本)。...---- 3 布局编辑器(Layout Editor,CL) 前面已经谈到,ConstraintLayout 和 Layout Editor 是互相为对方量身定制的,来看看谷歌的 CL 开发者是怎么说的...3.2.3 使用辅助工具自动创建约束 在 3.2.2 中,我们看到必须为控件添加足够多的约束来将其安放在想要的位置上。

    2.1K10

    带你领略 ConstraintLayout 1.1 的新功能

    )通过使用 Android Studio 中的可视化编辑器来为您生成绝大多数的 UI,进而达到简化 Android 中创建复杂布局的目的。...在 1.1 版本中,我们已经修复了链条的一些问题,并使它们能够处理更多的视图。您可以通过在两边添加约束来生成一个链条。例如在下面这个动画中,每个视图之间都有一个约束。 ?...在布置国际化字符串或显示用户生成的无法预测大小的内容时,屏障非常有用。 ? 屏障允许您通过几个视图来创建一个约束。 屏障将始终将自己置于虚拟群组之外,并且您可以使用它来限制其他视图。...在下面的示例中,我们将标记 profile_name 和 profile_image 以供 id 配置文件引用。 当您有多个需要显示或陈列在一起的元素时,这将很有用。...如果你想尝试试验性的优化上述中的 dimensions 和 chains,你可以在 ConstraintLayout 中通过如下代码来启用它们: android.support.constraint.ConstraintLayout

    1.5K20

    静若处子动若脱兔-Constraintlayout2.0一探究竟

    不过,为了偷懒,这篇文章直接使用了去年中分享的内容,当时Constraintlayout2.0还未Release,所以可能有些地方和正式版本有些区别,不过不影响,因为整体是一致的。...和非AndroidX两个版本,最低支持API14,即Android4.0。...implementation 'androidx.constraintlayout:constraintlayout:2.0.0' 在创建布局的时候,系统已经默认使用constraintlayout,...90178df070b39c060880cd6d550b5e3d 可以发现,这里实际上对动画进行了描述,首先是Transition,定义了动画的起始和结束状态,这里使用的是自包含的MotionScene...但是下的app:transitionEasing只能设置某个组件的插值器,而定义的是整个动画的插值器 下的app:transitionEasing必须在start和end中都定义 KeyCycle KeyCycle

    1.1K10

    【错误记录】Android Studio 编译报错 ( Module was compiled with an incompatible version of Kotlin. ) 2

    文章目录 一、报错信息 二、问题分析 三、解决方案 方案一 : 提高 Kotlin 版本到 1.7.10 方案二 : 降低 kotlin-stdlib-common 依赖库版本 在之前遇到过类似问题...-1.7.10.jar 模块是用不兼容的Kotlin版本编译的。...使用的 kotlin-stdlib-common-1.7.10.jar 依赖库版本太高 , 降低该依赖库版本 ; 首先分析该依赖库是如何导入进来的 , 在模块的构建脚本中 , 没有直接导入该依赖库 ,..., 需要逐一向上排查依赖的版本 , 可能是上一层依赖版本较高 , 需要将上一层依赖降低版本 , 上一层也可能还有上一层依赖 ; 可以考虑通过 【Android Gradle 插件】Android 依赖管理...必须强制使用 org.jetbrains.kotlin:kotlin-stdlib-common:1.5.0 版本的依赖库 ; configurations.all { resolutionStrategy

    4.3K30

    Android Studio 4.0重磅发布:全新的 Motion 编辑器及众多更新都在这里!

    设计 Motion Editor MotionLayout API 扩展了 ConstraintLayout 的丰富功能,可帮助 Android 开发人员在应用中管理复杂的运动和小部件动画。...在 Motion 编辑器中创建、编辑和预览动画 升级的 Layout Inspector 想要调查特定属性的值的源头?或者想通过嵌套视图的实时 3D 表示,更轻松地检查视图层次?...部署到运行 API 29 或更高版本的设备还能获得其他特性,例如动态布局层次结构(随视图更改而更新)、详细的视图属性(还可以帮助你确定资源值是如何解析的)以及正在运行的应用 UI 的 3D 模型。...更多信息参考: http://d.android.com/studio/build/build-analyzer Java 8 语言库在 D8 和 R8 中 desugaring 早期版本的 Android...依赖项元数据 使用 Android Gradle 插件 4.0.0 及更高版本构建应用时,插件会包含描述已编译到你应用中的库依赖项的元数据。

    4.7K30

    【Android Gradle 插件】Android 依赖管理 ⑤ ( Gradle 依赖优化 | 命令行查看依赖模块 | 依赖冲突问题 | 依赖传递冲突 | 分库冲突 | 依赖分组不同导致冲突 )

    3、赖分组不同导致冲突 4、解决思路 一、Gradle 依赖优化 ---- Gradle 依赖优化 : ① 依赖库版本选择 : 在 build.gradle 构建脚本中 , 如果设置了多个版本的依赖库...版本依赖 , 同时应用中又导入了 B 依赖库的 2.0 版本依赖 , 按照 Gradle 依赖优化的原则 , B 依赖库 同时导入了 1.0 和 2.0 两个版本 , 会自动选择最高版本 2.0 ,...依赖库可能存在分库 , 如 : 依赖库 A 中 , 包含了 B , C 分库 , 它们的所有版本都是 1.0 版本 ; 这两个分库是无法分开的 ; 应用突然 单独的依赖了 2.0 版本的 B 依赖库..., 这就出现了冲突 , 此时就会引入了两个版本的 B 依赖库 , 导致了冲突 ; 这是由于依赖版本不同导致的依赖冲突 ; 3、赖分组不同导致冲突 在之前开发中使用的是 support 依赖库 , 但是新版本的...Android 开发时使用 androidx 依赖库 , 这就导致了冲突 ; 这是由于依赖分组不同导致的依赖冲突 ; 4、解决思路 依赖冲突的本质是 一个类 出现了 两次 , 而且所处的依赖库的版本不同

    2.9K30

    炫酷!MotionLayout 使用介绍 (第一章)

    MotionLayout  是ConstrainLayout 2.0库中被引入的一个新类,帮助安卓开发者关联手势和组件动画。接下来的文章将介绍会如何在应用中添加和使用MotionLayout。...创建MotionLayout的目的是用于降低布局过渡动画和复杂的手势处理之间的难度,你可以认为它拥有综合属性动画TransitionManager,和CoordinatorLayout的功能。...'com.android.support.constraint:constraint-layout:2.0.0-beta1' } MotionLayout是ConstrainLayout的子类,因此你可以把它当作一个普通的布局...不是必须将实际描述信息包含在XML布局文件中。...记得在发布版本中关闭 app:progress=”float” 指定转换的进度0-1 app:currentState=”reference” 指定一个ConstraintSet 总结 第一篇文章包含了

    4.2K00

    可折叠设备的桌面模式

    它很适合于看媒体、进行视频通话、拍照甚至是玩游戏。 一个很好的例子是 Google Duo 团队 对其应用进行的优化,从而使该应用在平板电脑和可折叠设备上均能运行良好。...MotionLayout 结合了父类的灵活性,同时又具备在视图从一种姿态过渡到另一种时展示流畅动画的能力。...要使用这些库,您必须将 Google Maven 库添加到项目中,并且声明相关依赖: dependencies { ... // 成文时使用如下的版本号,Exoplayer 最新版本号详见...在其他的所有情况下 (非全屏) 您需要考虑导航栏或屏幕上其他 UI 组件占据的空间。 为了移动参考线,您必须指定它距离父布局底部的距离。...{ // 视图在窗口中的位置要与显示特征在同一坐标空间中。

    2.4K30

    PDF Java库: 创建PDF阅读器和编辑器

    在当今移动优先的世界中,创建 Android 应用程序是企业和开发人员的必备技能。...而且,随着处理 PDF 文档的需求不断增加,使用功能强大的 PDF SDK ComPDFKit 构建 Android PDF 阅读器和编辑器,能使您的最终用户轻松查看和编辑 PDF。...要求 ComPDFKit PDF SDK 在运行 API 级别 19 或更高版本,或者面向最新稳定的Android 4.4 或更高版本的 Android 设备上受支持。...项目规格 minSdkVersion 为 19或更高 compileSdkVersion 为 30或更高 targetSdkVersion 为 30或更高 Android ABI(s): x86,...android:name="android.permission.READ_EXTERNAL_STORAGE"/> 注意: 对于面向Android 6.0或更高版本的应用程序,请确保在运行时检查并请求外部存储的读写权限

    46920

    MontionLayout:打开动画新世界大门(其一)

    简单翻译过来就是:MontionLayout 是一个能够帮助我们在 app 中管理手势和控件动画的布局组件。它是 ConstraintLayout 的子类并且基于它自身丰富的布局功能来进行构建。...正如 Nicolas Roard 所说的那样: 你可以在 MontionLayout 功能方面将其看作是属性动画、TransitionManager 和 CoordinatorLayout 的结合体。...:2.0.0-beta2' } 目前,MotionLayout 仍处于 beta 版本,虽然官方之前说过 MotionLayout 的动画辅助工具将会在 beta 版本推出,但目前还没有出现,不出意外应该是在下一个版本了...到时候应该就可以像 ConstraintLayout 那样直接通过布局编辑器来进行部分预览和参数操作了。...由于三个 Android 机器人起点位置是一样的,而只有蓝色的显示,那么只要在开始位置将另外的两个机器人透明度设置为 0 即可,然后在结束位置将三个小机器人分开摆放,这里设计到 ConstraintLayout

    97030

    【约束布局】ConstraintLayout 约束布局 ( 简介 | 引入依赖 | 基本操作 | 垂直定位约束 | 角度定位约束 | 基线约束 )

    ConstraintLayout 简介 1. 引入 约束 布局 ( 1 ) 约束性布局 作用 和 简介 2. 约束 简介 ( 1 ) 约束个数要求 ( 2 ) 约束设置 与 显示位置 3....3.原理 : 每个 约束 ( Constraint ) 都定义了 该 View 沿水平 或 垂直 方向的位置 , 因此 每个 View 都必须在 水平 或 垂直 方向上 含有一个约束 , 大部分情况下...显示位置 : 如果 在 ConstraintLayout 中组件没有约束 , 在设备上运行时 , 该组件将在 ( 0 , 0 ) 坐标 ( 即 左上角 ) 处显示 ; 3.没有添加约束示例 ( 官网示例...) : 如下图 , 没有为 C 组件设置 垂直约束 , 在布局编辑器中 其 在 A 组件的下方显示 , 但是 在设备上运行时 , C 组件 左右 与 A 组件对齐 , 但是其显示在 屏幕的 最顶端 ,...ConstraintLayout 引入 ( 1 ) ConstraintLayout 依赖添加 ConstraintLayout 引入 : 1.声明 google 库 : 在 项目的 build.gradle

    5.9K41

    【错误记录】Android Studio 编译报错 ( Module was compiled with an incompatible version of Kotlin. The binary )

    -1.7.10.jar 模块是用不兼容的Kotlin版本编译的。...使用的 kotlin-stdlib-common-1.7.10.jar 依赖库版本太高 , 降低该依赖库版本 ; 首先分析该依赖库是如何导入进来的 , 在模块的构建脚本中 , 没有直接导入该依赖库 ,...:kotlin-stdlib-common:1.7.10 依赖 , 这就导致了此处使用的是高版本的依赖替换了低版本依赖 ; +--- androidx.appcompat:appcompat:1.5.1..., 需要逐一向上排查依赖的版本 , 可能是上一层依赖版本较高 , 需要将上一层依赖降低版本 , 上一层也可能还有上一层依赖 ; 可以考虑通过 【Android Gradle 插件】Android 依赖管理...必须强制使用 org.jetbrains.kotlin:kotlin-stdlib-common:1.5.0 版本的依赖库 ; configurations.all { resolutionStrategy

    9.3K41

    Android Studio 4.0 重磅发布!Android 11 Bata 版来了!

    设计 Motion Editor MotionLayout API 扩展了 ConstraintLayout 的丰富功能,可帮助 Android 开发人员在应用中管理复杂的运动和小部件动画。...更多信息参考: http://d.android.com/studio/write/motion-editor 在 Motion 编辑器中创建、编辑和预览动画 升级的 Layout Inspector...部署到运行 API 29 或更高版本的设备还能获得其他特性,例如动态布局层次结构(随视图更改而更新)、详细的视图属性(还可以帮助你确定资源值是如何解析的)以及正在运行的应用 UI 的 3D 模型。...更多信息参考: http://d.android.com/studio/build/build-analyzer Java 8 语言库在 D8 和 R8 中 desugaring 早期版本的 Android...依赖项元数据 使用 Android Gradle 插件 4.0.0 及更高版本构建应用时,插件会包含描述已编译到你应用中的库依赖项的元数据。

    2.6K20

    Android Studio 4.0 正式版发布

    的丰富功能,使得 Android 开发者能在应用中管理复杂的动效和 widget 动画。...编辑器还与您的 Android 项目集成,为所有的类、方法和字段提供完整的符号补全,并提供快速导航和重构功能。...Java 8 语言库在 D8 和 R8 中的字节码转换 (desugaring) 上一个版本的 Android Gradle 插件通过字节码转换操作,在所有 API 等级中支持了大量 Java 8 的语言功能...但您可能不是每个项目都需要用到这些库和功能。在插件的 4.0.0 版本中,您可以单独关闭某个构建选项 (如下所示),从而优化大型项目的构建性能。...依赖元数据 在使用 Android Gradle 插件 4.0.0 及以上版本构建应用时,插件中会包含描述编译到您的应用中的库依赖关系的元数据。

    3.4K31

    Android Studio 4.0 稳定版发布了

    2、Java 8库在D8和R8中逐渐消失 Android Studio 现在支持使用多种 Java 8 语 言API,而无需给应用程序设置最低 API 级别。...1、新动作编辑器 Android Studio 现在包括用于 MotionLayout 布局类型的可视设计编辑器,使创建和预览动画更加容易。...动作编辑器提供了一个简单的界面,用于处理 MotionLayout 库中的元素,这些元素是 Android 应用中动画的基础。 在以前的版本中,创建和更改这些元素需要手动编辑XML资源文件中的约束。...image ⚠️注意:在使用 Motion 编辑器之前,请确保将文件中的 ConstraintLayout 依赖项设置 build.gradle 为 version 2.0.0-beta3 或更高版本...五、用于代码收缩规则的智能编辑器功能 当打开 R8 的代码收缩规则文件时,Android Studio 现在提供智能编辑器功能,例如:语法突出显示、代码完成和错误检查。

    4.6K20

    Android Studio 中的 Motion Editor 用法详解

    自 Android Studio 4.0 版本开始,我们发布了稳定版本的 Motion Editor,许多开发者已经在使用它创建动画效果。 ?...Motion Editor 中运行的动画 Motion Editor 是 Android Studio Layout Editor (布局编辑器) 的一个扩展,当您在一个包含 MotionLayout...您可以使用已在布局编辑器中所熟知的交互方式来编辑布局和 Motion Scene 文件,并可以直接在 Android Studio 预览界面中对动画效果进行预览。...您可以使用 Design 视图和 Blueprint 视图预览动画,在没有很多视觉干扰的情况下更清晰地了解视图是如何移动的。 ? 我们还为视图在屏幕上的路径添加了可视化的功能,包括关键帧的标记。...widget 的动画 使用 MotionLayout 在 Android 应用中添加动画 (codelab) MotionLayout 示例 MotionLayout / ConstraintLayout

    2.2K10

    【Android从零单排系列三十四】《Android布局介绍——ConstraintLayout》

    一 ConstraintLayout基本介绍 ConstraintLayout是 Android 中的一种灵活且强大的布局容器。...可视化编辑器支持:Android Studio提供了可视化的布局编辑器,使得使用ConstraintLayout更加简便和直观。...你可以通过拖拽和调整视图的边界、连接线和约束条件来轻松创建和修改布局。 ConstraintLayout的工作原理是通过设置视图之间的宽度、高度和相对位置的约束条件来实现。...二 ConstraintLayout使用方法 添加依赖:首先,在项目的build.gradle文件中,确保已经添加了ConstraintLayout库的依赖。...:在XML文件中,你可以通过预览功能(如Android Studio中的布局编辑器)来查看布局效果,并根据需要进行微调和修改。

    45620
    领券