MonoTouch UIImage.FromResource加载Retina图像

时间:2013-01-14 05:09:29

标签: ios xamarin.ios uiimage embedded-resource

我有一个类,它从引用的MonoTouch库中的嵌入式资源加载图像,如下所示:

UIImage.FromResource (null, "Resources.Items");

如果是UIImage.FromFile ("abc.png");并且我添加了名为abc@2x.png的文件,则视网膜图像将显示在兼容设备上。

如何使用UIImage.FromResource (null, "Resources.Items");

实现同样的效果,即加载视网膜图像

我无法使用UIImage.FromFile ("abc.png");,因为资源位于引用的DLL中。

1 个答案:

答案 0 :(得分:3)

detect a retina display很容易。从那里,您可以从程序集中加载 right 资源。 E.g。

UIImage.FromResource (null, (UIScreen.MainScreen.Scale > 1.0)
    ? "Resources.Items.Retina" : "Resources.Items");

使用此功能,您可以根据需要为视网膜资源命名,如果您愿意,可以使用标准 @2x表示法。