Xamarin Studio无法在macOS的共享项目中看到XIB

时间:2017-06-22 14:50:44

标签: macos xamarin xamarin-studio xamarin.mac

我正在为我的应用使用here描述的方法。

目前,我能够为Android和iOS平台设置此类结构。一般来说,我有全局核心(.NET lib),特定于平台的核心(特定于平台的类库)和一些扩展(特定于平台的类库)。 当我尝试以相同的方式为macOS平台配置时出现问题。我能够使用应该在应用程序中重用的组件创建特定于平台的类库(现在这只是带有xib文件的一个类)。但是,当我想在macOS目标中使用这个包时,我得到了特定于macOS平台的运行时错误:

Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: '-[NSNib _initWithNibNamed:bundle:options: ] could not load the nibName: MainView in bundle (null).'

这很奇怪,因为我以相同的方式为iOS应用程序设置,并且在iOS目标中,它的工作非常好:所有源文件,xib文件,资源都是可见的,可以从包中自由使用。 注意: 我发现上面提到的一些问题和一些可以解决这个阻塞点的解决方案:

  1. 重命名xib文件 - 无法正常工作
  2. 将xib文件放在rootDir中 - 不起作用
  3. 确保BuildAction for file是“InterfaceDefinition” - 不起作用(它总是设置为InterfaceDefinition)
  4. 重新创建文件 - 不起作用
  5. 清除所有内容,删除文件,重启,创建新内容 - 无法正常工作
  6. 将文件放在资源目录中 - 不起作用
  7. 强制包含到包中 - 不起作用
  8. 检查VB中的类是否正确 - 不起作用(总是正确的)
  9. 检查带有自动生成文件的Xcode文件夹 - 不起作用(通常所有文件都在那里,很少次自动生成h和m文件丢失 - >我收到另一个错误,但是当手动创建它们时 - >我面对再次出现这样的错误)
  10. 手动指定资源包 - 不起作用(这很奇怪,因为对于iOS lib,所有资源都在null(主)包中可用) - 我尝试显式指定包 - 不起作用。
  11. 那么,如何在一些源文件,xib,其他资源中准备类库,以便可以从任何使用该软件包的项目中自由访问它?或者上面描述的一些步骤可能不正确?

1 个答案:

答案 0 :(得分:1)

根据来自Xamarin Forum的Chris Hamonds的回答:

  

我相信这是我们修复的错误,但不在我们频道的最新版本中。我可以使用我们的Alpha版本重现,但是从https://jenkins.mono-project.com/view/Xamarin.MaciOS/job/xamarin-macios-builds-master/

安装构建版本