使用Xamrin.Forms的Mac应用程序中的图标和图像

时间:2017-12-02 10:44:50

标签: xamarin.forms xamarin.mac

我正在将windows forms应用转换为Mac。我选择的策略是创建一个xamarin forms项目。稍后向其添加Xamarin.Mac project并使用xamarin表单NetStandard代码在MacOS上运行。原始win forms应用有两个.ico images。一个在screen上显示,另一个在Desktop图标上显示。如何在我的Mac项目中使用这些图像。提前谢谢。

1 个答案:

答案 0 :(得分:1)

没有人回答,但我自己找到了解决方法。在将Windows form应用转换为Xamarin.Mac App时,我必须处理几个问题。我使用Visual Studio for Mac进行创建{{ 1}}项目并将Xamarin.Mac项目添加到它。很多C#逻辑开箱即用于Xamarin.Mac。但我必须在Xamarin.Forms中重写整个用户界面。我只有两张Xaml张图片。我需要将它们转换为可在Mac上使用的格式。 我决定使用免费的开源GIMP软件。我使用.ico将图片格式更改为GIMP

在此之后,我将.png图片保存在.png的Xamarin.Mac中,Resources folderBuild Action。请将此xaml写入图片:

Bundle Resource

在代码后面设置图像的源代码如下:

<Image  x:Name="LogoImage" Margin="-100,-100,-100,-120"/>

请注意LogoImage.Source =ImageSource.FromFile("logo.png"); 用于ImageSource.FromFile中保存的Local images。而platform project用于ImageSource.FromResource中的images EmbeddedShared ProjectBuild Action。第一个图像显示在UI屏幕上。

现在,Embedded Resource中的第二个图像用作Application icon。这里的事情有效winforms app。在现代应用开发中,通常的做法是为应用运行的differentlyevery resolution提供图像。除此之外,需要在不同的地方展示不同尺寸的图像。例如Mac上device form factorDockMenubar的图片。所以我为GIMP所需的每个分辨率创建了图像。

最后从Mac项目中打开Assets.xcassets文件。向下滚动并找到不同分辨率的mac图像的空框。通过单击每个框并选择正确的图像大小来添加匹配的图像。有关详细信息Go here。最后Activity Monitorbin文件夹必须来自obj deletedprojectsClean项目ReBuild,当我Xamarin.Mac应用时,图片会集成到应用中并displaying