17 | 依赖管理(一):图片、配置和字体在Flutter中怎么用?
该思维导图由 AI 生成,仅供参考
资源管理
- 深入了解
- 翻译
- 解释
- 总结
Flutter中的资源管理机制是一篇深入介绍如何在Flutter应用中管理图片、配置和字体资源的技术文章。文章首先强调了资源管理的重要性,并详细讲解了Flutter中资源的灵活存放位置和显式声明方式。不仅如此,文章还介绍了不同类型资源文件的加载方式,以及如何根据设备分辨率加载不同分辨率的图片资源。此外,文章还详细讲解了如何在Flutter中使用自定义字体,并给出了相应的代码示例。总的来说,这篇文章通过具体的代码示例和详细的讲解,帮助读者了解了Flutter中资源管理的基本原理和实际操作方法。另外,文章还提及了在原生平台中设置App启动图标和启动图的操作步骤,为读者提供了全面的资源管理知识。值得一提的是,文章还留下了两道思考题,引发读者思考和实验,增加了互动性和参与度。整体而言,这篇文章对于想要深入了解Flutter资源管理机制的开发者来说,是一篇极具价值的技术指南。
《Flutter 核心技术与实战》,新⼈⾸单¥59
全部留言(30)
- 最新
- 精选
- 33271. 使用2.0x图片,优先使用和当前像素密度相近的资源 2.找2.0x图片,按分辨率由低到高找
作者回复: 对
2019-08-0611 - Geek_45a2f1老师,我发现直接在drawable里面设置启动图,限制太大,于是就声明了一个widget,但是在APP启动的时候还是有白屏,请问有什么方法解决呢
作者回复: Flutter需要借助于原生Android/iOS的运行环境,所以在引擎初始化之前的那部分工作(比如启动图、App图标、App名字),Flutter是搞不定的,必须要回到原生的工程中去实现
2019-08-1437 - 亡命之徒对于像素密度3.0x的会找到2.0x的图片,对于2.0x的像素密度,1.0会自动压缩处理
作者回复: 赞
2019-08-064 - 拼命的小贝壳老师,启动icon为什么不在flutter本工程内增加一个配置,运行前编译到原生工程内?
作者回复: 这个思路是可行的,我猜Flutter不这么做可能是想从设计层面保持Flutter工程和iOS/Android工程的独立性和简单性。毕竟Flutter只是一个应用层的框架,除了启动图、应用图标之外,像应用的配置、多语言环境、签名证书、设备配置这些东西是必须通过原生工程搞定的。通过脚本同步固然可行,但从框架层面考虑,Flutter不太可能只考虑一两个应用配置的迁移同步,必须要给出一个在Flutter内闭环的完整应用配置同步方案,后续随着原生开发环境的升级,维护和适配的工作量不会低的。
2019-11-282 - Captain目录批量指定并不递归,只有在该目录下的文件才可以被包括,如果下面还有子目录的话,需要单独声明子目录下的文件。 这句话 能举例说明么?
作者回复: 就是挨个单独声明子目录,或者单独声明子目录下的文件啊
2019-11-19 - 巫以为 Android 和 iOS 的都是生成的,可以加到 gitignore 中,看来不行啊。那哪些可以忽略呢?
作者回复: 普通flutter工程的ios和android目录不能忽略,module工程可以
2019-10-22 - 🌝目录批量指定的话,需不需要把2.0x、3.0x的目录再指定一遍?
作者回复: 你可以试试看
2019-10-192 - jerry3.0像素密度的机器,使用1.0密度的图片,会放大吗
作者回复: 看你这个坑位有多大了,如果不设坑位大小,会按照实际比例去填
2019-10-17 - zjhuangpubspec.yaml 可以直接将图片资源文件指定到 Android 的 mipmap-xhdpi 中吗?此时该目录下的资源 Flutter 会当成是 1.0x 的还是 2.0x 的
作者回复: 不可以
2019-10-16 - 承香墨影老师,您好。有 2 个疑问,希望您能解答。 1. Flutter 中加载图片,会对图片的尺寸做优化吗?例如同一张 50x50 的图片,显示在两个不同尺寸的 Image 上,例如 20x20 和 40x40 的 Image,它们在内存中是一份还是两份数据? 然后在内存中占用的内存尺寸,是如何计算的?是按照原图的尺寸和它所存放的位置来计算的,还是依赖加载 Widget 的尺寸? 2. 如果是网络图片,又是如何处理的?会和 Android 的 Glide 之类的图片库一样,对其进行采样率的压缩吗?
作者回复: 1.原始图片数据是一份(bitmap大小),渲染数据是两份(按加载widget尺寸算压缩后的bitmap大小)。 2.同1 你可以自己试验一下,用Dart DevTools中的Memory工具
2019-10-01