MonoMac - 将UI文件移动到类库

时间:2012-11-21 18:37:11

标签: xcode monomac

在MonoMac上,是否可以将至少我的ViewControllers(以及理想情况下,我的.xib文件)移动到类库项目中?

在尝试这样做时,我的XCode集成被破坏了。

例如,在默认项目中:

  • 将MainWindowController.cs移动到类库意味着它不再编译(因为它无法看到MainWindow类)
  • 所以我也将MainWindow.cs和MainWindow.designer.cs移动到我的类库中。现在,我的解决方案编译但不运行 - 我在控制台上得到以下内容:
接口生成器文件中的

未知窗口类MainWindow,而是创建通用窗口

在尝试强制转换MainWindow的空指针上崩溃

所以很明显我打破了.xib和托管代码之间的联系。当然,移动.xib本身并没有帮助 - 一旦它在类库项目中,我就会失去所有'魔术'(例如双击将文件作为MD中的文本而不是XCode打开)。

当然,我可以在这里应用一些解决方法 - 保持我的控制器尽可能薄,并尝试将它们构建为我的类库中逻辑之上的非常薄的包装器。但如果我真的可以移动控制器那就太棒了。深入了解MonoMac源并没有帮助,显然它非常复杂。

我应该注意到,我已经以这种方式成功构建了一个MonoTouch项目。当然不同的是,它没有使用.xib文件...

我已经在Mono论坛上发布了,但没有任何回复(http://mono.1490590.n4.nabble.com/MonoMac-project-structure-tp4657231.html)。希望我的问题能在这里获得更大的可见度。


编辑:

这仍然不起作用。虽然最新的MonoDevelop允许我以这种方式创建和编译解决方案,但实际输出不能按预期工作。调试器永远不会附加。从MonoMac项目中删除MainWindow定义(将自定义窗口定义保留在库项目中)会导致相同的错误。


0 个答案:

没有答案