android - 使用 FlutterIcons 而不是直接使用 SVG 是否有任何性能提升?
问题描述
例如,使用fluttericon或 fluttericon 而不是svg
直接将每个图标与flutter_svg一起使用是否有任何性能提升或任何其他优势?
解决方案
这个问题有点老了,所以你可能已经找到了答案,但这是我对这个问题的看法:
表演
在性能方面,虽然flutter_svg包随着时间的推移有了很大改进,但它仍然是一个复杂的小部件,它将解析 SVG 文件并尝试使用其属性来渲染它。每当您尝试显示大量 svg 小部件时,仍然存在一些与性能相关的问题:
诸如fluttericon或任何其他通过字体提供更多图标的解决方案将始终提供更好的渲染性能,因为它就像渲染文本一样简单。
现在在fluttericon和网站 fluttericon.com生成的字体文件之间选择哪一个?
Fluttericon (package) vs. FlutterIcon (web)
正如Ravindra和ilikerobots所说,直接导入包fluttericon会增加应用程序的大小,因为它将包含所有字体包。包的 README 文件中也提到了它:
请注意,由于尺寸较大,此包装不适用于生产用途。相反,它可以用作开发辅助工具来帮助识别/测试图标。
对于生产使用,强烈建议使用FlutterIcon自定义图标包,将图标字体限制为所需的图标,并从自定义 SVG 构建自己的图标。
结论
因此,就性能和应用程序大小而言,最好的选择是使用 FlutterIcon 并且只选择您想要包含在应用程序中的图标。该软件包仅应用于在开发时尝试哪个图标适合您的需求。
最后,如果您需要显示一些复杂的 SVG 无法使用 FlutterIcon 准确导入,则应该主要使用软件包 flutter_svg。
推荐阅读
- php - 为什么 array_unique 在这种情况下不起作用
- ms-word - OpenXML 可以用来启动一个新的 Word 实例吗?
- nginx - 在 AWS ALB 上使用多个域在 NGINX 级别阻止 IP
- php - 将“INSERT”MySQL 查询转换为 Postgresql 查询
- flutter - 当我使用 google_maps_flutter 在地图中点击标记时如何获取警报框:^0.2.0 插件
- phpstorm - PhpStorm 未暂停的断点从未命中
- android - android soong 构建系统的原生代码覆盖率
- php - SQL 查询加载速度比它说的要慢
- java - 我应该改变什么来优化替换方法?
- python - 为什么局部变量会自我更新?