Animating an Opacity widget directly causes the widget (and possibly its subtree) to rebuild each frame, which is not very efficient. Consider using an AnimatedOpacity or a FadeTransition instead.
在animation中使用Opacity widget直接导致widget(可能还有它的子树)每一帧都rebuild,这效率很低。 建议改用 AnimatedOpacity 或 FadeTransition。

Transparent image - 透明image

If only a single Image or Color needs to be composited with an opacity between 0.0 and 1.0, it’s much faster to directly use them without Opacity widgets.
如果只需要将单个Image或Color 展示在 0.0 和 1.0 之间的透明度,则直接使用它们(到自身的透明度)会比使用Opacity widget 快得多。

For example, Container(color: Color.fromRGBO(255, 0, 0, 0.5)) is much faster than Opacity(opacity: 0.5, child: Container(color: Colors.red)).
例如,Container(color: Color.fromRGBO(255, 0, 0, 0.5)) 比 Opacity(opacity: 0.5, child: Container(color: Colors.red)) 快得多。

The following example draws an Image with 0.5 opacity without using Opacity:
以下示例在不使用 Opacity 的情况下绘制透明度为 0.5 的Image:

Image.network('https://raw.githubusercontent.com/flutter/assets-for-api-docs/master/packages/diagrams/assets/blend_mode_destination.jpeg',color: const Color.fromRGBO(255, 255, 255, 0.5),colorBlendMode: BlendMode.modulate
)

Directly drawing an Image or Color with opacity is faster than using Opacity on top of them because Opacity could apply the opacity to a group of widgets and therefore a costly offscreen buffer will be used. Drawing content into the offscreen buffer may also trigger render target switches and such switching is particularly slow in older GPUs.
绘制直接设置自身透明度的image或Color比在它们的父节点上使用Opacity widget更快,因为Opacity widget可以运用于应用于一组widget,因此将使用开销大的offscreen buffer。 将内容绘制到offscreen buffer也可能触发渲染目标切换,并且这种切换在较旧的 GPU 中特别慢。

opacity animation性能注意事项相关推荐

  1. css html 优化,CSS Animation性能优化

    CSS Animation是实现Web Animation方法之一,其主要通过@keyframes和animation-*或者transition来实现一些Web动效.不过今天我们聊的不是怎么制作We ...

  2. DreamFactory 第9章 性能注意事项

    DreamFactory 第9章 性能注意事项 DreamFactory是一个基于PHP的应用程序,尽管我们会尽一切努力优化代码,但性能很大程度上取决于基础架构级别的决策.幸运的是,这些决定并不是由预 ...

  3. sql如何避免插入并发_SQL批量插入并发和性能注意事项

    sql如何避免插入并发 One of the challenges we face when using SQL bulk insert from files flat can be concurre ...

  4. 提高JS性能注意事项(转载)

    一.执行效率 1. DOM 1.1 使用DocumentFragment优化多次append 说明:添加多个dom元素时,先将元素append到DocumentFragment中,最后统一将Docum ...

  5. 服务器 网络文件夹,System.IO.FileSystemWatcher监视网络服务器文件夹 - 性能注意事项(Sys...

    我想看更改网络服务器上的文件夹树. 这些文件都具有特定的扩展. 有树约200文件夹和带我看的延长约1200文件. 我不能写一个服务,在服务器上运行(禁地!),所以解决方案必须是本地的客户端. 及时性不 ...

  6. iOS Core Animation Advanced Techniques(七):高效绘图、图像IO以及图层性能

    高效绘图 不必要的效率考虑往往是性能问题的万恶之源. --William Allan Wulf 在第12章『速度的曲率』我们学习如何用Instruments来诊断Core Animation性能问题. ...

  7. 硬件加速下webview切换闪屏_网页渲染性能优化 —— 性能优化下

    博客 有更多精品文章哟. Composite 的优化 终于,我们到了像素管道的末尾.对于这一部分的优化策略,我们可以从为什么需要 Composited Layer(Graphics Layer)来入手 ...

  8. (译)2019年前端性能优化清单 — 中篇

    (译)2019年前端性能优化清单 - 上篇 (译)2019年前端性能优化清单 - 中篇 (译)2019年前端性能优化清单 - 下篇 目录 资源优化 17. 使用 Brotli 或 Zopfli 进行纯 ...

  9. iOS核心动画高级技术(十二) 性能调优

    Code should run as fast as necessary, but no faster. 代码应该运行的尽量快,而不是更快 - 理查德 在第一和第二部分,我们了解了Core Anima ...

最新文章

  1. python中*的用法
  2. 常用Nagios配置命令
  3. node.js中的字符串、对象和json处理函数
  4. android 介绍0
  5. 关于RT-Thread的背景和成长
  6. ejb 2.0 3.0_EJB 3.0注入和查找简介
  7. ES6基础之——对象表达式
  8. Numpy——numpy属性
  9. 关于联想安装linux系统后无法扫描出wifi网络问题解决方案
  10. 未来教育题库 ***Java二级试题第27套***
  11. ToneChip反馈降噪抑制器的UI设计
  12. 输入时(hour)、分(minute)、秒(second)的一个具体时间,要求打印出它的下一秒出来(一天24小时)。 例如输入的是23时59分59秒,则输出00:00:00
  13. WinSCP(版本5.7.6)中文文件名显示乱码
  14. 正则匹配某字符前的内容
  15. 【华人学者风采】周昆 浙江大学
  16. 至简设计系列_电子密码锁
  17. 【剑指 Java】第 1 弹:靠这份 Java 基础知识总结,我拿到了满意的 Offer
  18. ijkplayer使用ffmpeg为视频添加水印avfilter_graph_parse_ptr返回Invalid data found when processing input
  19. OpenWrt设置无线桥继教程
  20. Java修炼之凡界篇 筑基期 第02卷 语法 第04话 类型转换

热门文章

  1. vscode - 修改字体 、 合并字符、 使用连体字(Fira Code)
  2. Photoshop cc2018 安装设置自定义路径
  3. java:100以内的所有质数的输出
  4. Apache Drill安装测试
  5. 庄子 内篇 养生主第三
  6. PTA - 数据库合集2
  7. 华为MDC300F的操作记录
  8. 航天金税开票软件3.0登录报错,已停止工作
  9. 国产化之银河麒麟安装.NetCore-包管理器方式
  10. 洛谷P5149——会议座位【字典树 + 逆序对】