在添加新的Xamarin.Forms PCL时添加Xamarin.iOS到解决方案

问题描述:

我今天在Xamarin.Forms解决方案中添加了一个新的Xamarin.Forms可移植类库。该项目包括Xamarin.Forms nuget包和程序集引用;它不包括Xamarin.iOS。在添加新的Xamarin.Forms PCL时添加Xamarin.iOS到解决方案

我明白了为什么不包括在内,因为目前还不清楚您可能使用此PCL定位哪个平台。我确实进入

~/Library/Frameworks/Xamarin.iOS.framework/Versions/9.0.1.29/lib/mono/Xamarin.iOS/ 

目录并直接添加Xamarin.iOS.dll程序集。这似乎在调试时工作;在释放模式下我有奇怪的怪异现象,在DI解析过程中需要时我的PCL库类型没有找到。当我更新Xamarin.iOS时,这种方法也会中断,我必须手动更新这个程序集引用。

有没有一种方法来添加Xamarin.iOS而不具有对该特定版本的硬依赖性,在该路径中?

+0

在iOS项目中,您应该检查** References **文件夹,而不是** Packages **文件夹。如果你还没有Xamarin.iOS的参考资料,请更新Xamarin以获得最新的稳定版本和资讯。 – Kowalski

+0

我已经这样做了,仍然没有在参考下。编辑引用不会列出Xamarin.iOS作为我可以添加的可选组件。 –

我已经在VS 2013中为新项目 - >移动应用程序创建了一个新的xamarin表单项目。以下是新项目屏幕的截屏:

enter image description here

,这里是我的解决办法为我创造的截屏:

enter image description here

所有的依赖已添加通过Nuget并通过相同的更新。

如果您在Windows中使用Xamarin Studio,那么它可能不会为您创建iOS项目。

+0

我在OSX上使用Xamarin Studio。最初的Xamarin.Forms iOS项目是用Xamarin.iOS程序集创建的。当我创建新的Xamarin.Forms PCL时,Xamarin.iOS程序集不包含在内。 NuGet搜索也没有提供任何Xamarin.iOS结果 –