我们有许多图像用作应用资产,为了简单起见,我们只说10张图片。我知道,Xamarin.Forms不会将这些图像放在一起,所以如果我的工具栏中显示了这10个图像(这只是为了解释问题,我们不会真的把10个图像放在一个小工具栏中)并且我有5个页面显示相同的工具栏,这意味着10个图像将每5次加载一次,导致总共加载50个图像。我只想加载10张图片,而不是加载5张图片×10图片= 50张图片。此外,如果我必须将这10张图片添加到我们的存储库中,我将不得不在我们的存储库中添加至少3个相同图像的副本(Android 1,IOS 1,UWP 1)。这导致存储库中有30个图像,但实际上我只需要10个。因此,这两个问题让我相信应该有一个更好的跨平台解决方案,以便我可以在所有3个平台上共享相同的图像,只有一个所有3个平台(Android,IOS,UWP)使用的图像,并且无论我在UI中展示多少次,我都只在内存中加载一次图像。Xamarin.Forms图像缓存跨平台解决方案
0
A
回答
2
你可以看看支持缓存的FFImageLoading。有图像共享代码,而不是你的平台特定的代码,你可以看看嵌入图像:
嵌入图像也随应用程序(如本地图片),但是,而不必在图像的副本每个应用程序的文件结构都将图像文件作为资源嵌入程序集中。这种分发图像的方法特别适合创建组件,因为图像与代码捆绑在一起。
https://developer.xamarin.com/guides/xamarin-forms/user-interface/images/#Embedded_Images
请记住,虽然每个平台,添加图像是不是一件坏事。由于不同的像素密度等,每个平台都有自己的图像版本,以便在每个平台上看起来不错,您可能需要考虑平台特定的路线。
另一种替代方法是将图像添加为每个平台特定文件中的文件链接图像。图像文件本身可以保存在一个位置,并以文件形式链接到每个平台的正确目录中。
相关问题
- 1. WriteRegStr HKLM:跨Windows平台解决方案
- 2. 缓存解决方案
- 3. 基于Ruby的移动跨平台解决方案的使用?
- 4. 编译后复制文件的跨平台解决方案
- 5. 跨平台〜2GB文件上传解决方案
- 6. Java守护进程最好的跨平台解决方案?
- 7. 创建移动跨平台脚本解决方案
- 8. 每种vimrc跨平台解决方案的优缺点?
- 9. Arial字体的跨平台解决方案
- 10. 针对移动解决方案的跨平台ORM
- 11. 跨平台移动应用程序解决方案
- 12. 是GTK 3.x真正的跨平台解决方案吗?
- 13. 最适合网络服务器的跨平台解决方案?
- 14. 寻找质量,桌面,跨平台HTML到RTF解决方案
- 15. 我的缓存解决方案解决方案是否安全?
- 16. 测试平台解决方案
- 17. 下载和缓存图像的最佳解决方案
- 18. 无缓存解决方案和图像的问题
- 19. 最佳的NoSQL缓存解决方案
- 20. 需要Java缓存解决方案
- 21. 快速缓存解决方案PHP
- 22. 为eigs做matlab缓存解决方案
- 23. Xamarin.Forms - 彼此顶部的跨平台图像
- 24. 主动解决方案平台VS项目平台VS平台目标
- 25. 如何改进图像加载问题。有没有像解决方案缓存
- 26. 需要我的asp.net mvc解决方案的缓存解决方案
- 27. java - 支持索引/查询缓存的缓存解决方案
- 28. .NET跨平台缓存依赖关系
- 29. 具有最快初始启动的跨平台移动开发解决方案
- 30. 用于VCS的符号链接处理的跨平台解决方案
非常感谢史蒂文 – pixel