1

我想在 Xamarin 的多个设备应用程序中使用相同的图像。

我有一个 PCL 核心库并开始使用 MVVMCross。实现这一目标的最佳方法是什么?我可以将它们作为资源嵌入到核心库中并在我的 Andriod/iOs 项目中访问它,还是使用添加为链接更好?

4

1 回答 1

6

理论上,您可以将这些作为二进制资源嵌入到 PCL 项目中,然后可以byte[]通过GetResourceStream和从那里访问它们,然后可以在您的 UI 项目中对它们进行解码。这需要一些设置工作,并且无法在 xib 编辑器、android XML 等中使用图像

更容易的是,您还可以使用“添加为链接”共享这些图像文件,然后允许每个单独的平台优化和打包文件 - 每个平台都擅长这一点 - 例如,具有不同 dpi 可绘制文件夹的 Android 和具有 2x 图像的 IOS打包。这种技术也适用于 xib 和 XML 设计器。

然而,在实践中,我通常发现我不会在项目之间共享这些图像文件——相反,在大多数商业项目中,PhotoShop 的家伙坚持给我图标、分隔线和其他每个平台独有的 chrome 图像。

于 2013-08-10T04:01:02.403 回答