我們有許多圖像用作應用資產,爲了簡單起見,我們只說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. 緩存解決方案
- 2. 每種vimrc跨平臺解決方案的優缺點?
- 3. 尋找質量,桌面,跨平臺HTML到RTF解決方案
- 4. 跨平臺移動應用程序解決方案
- 5. 最適合網絡服務器的跨平臺解決方案?
- 6. 針對移動解決方案的跨平臺ORM
- 7. Arial字體的跨平臺解決方案
- 8. 創建移動跨平臺腳本解決方案
- 9. 跨平臺〜2GB文件上傳解決方案
- 10. 我的緩存解決方案解決方案是否安全?
- 11. 測試平臺解決方案
- 12. 下載和緩存圖像的最佳解決方案
- 13. 無緩存解決方案和圖像的問題
- 14. 主動解決方案平臺VS項目平臺VS平臺目標
- 15. .NET跨平臺緩存依賴關係
- 16. java - 支持索引/查詢緩存的緩存解決方案
- 17. 具有最快初始啓動的跨平臺移動開發解決方案
- 18. 在Python中獲取當前登錄名的跨平臺解決方案
- 19. 創建一個文件C++(用於Unix和Windows的跨平臺解決方案)
- 20. 支持離線和關係支持的跨平臺同步解決方案
- 21. Sprite解決方案緩慢OnHover事件和2圖像
- 22. 圖像縮放解決方案?
- 23. CSS解決方案圖像渲染
- 24. 全屏圖像和Android解決方案
- 25. 用於清潔SD卡上圖像緩存目錄的解決方案
- 26. 跨越不同解決方案的msbuild
- 27. jQuery的跨瀏覽器解決方案
- 28. 跨CSS瀏覽器解決方案'sticky'
- 29. 使用glOrthof的OpenglES多平臺屏幕比例解決方案
- 30. 一次構建多個解決方案平臺?
非常感謝史蒂文 – pixel