如果 XIB 在 DLL / 库中,则加载视图时出错
Posted
技术标签:
【中文标题】如果 XIB 在 DLL / 库中,则加载视图时出错【英文标题】:Error loading view if XIB is in DLL / library 【发布时间】:2011-01-30 20:50:18 【问题描述】:我曾经在我当前的项目中使用我的进度视图控制器。然后我决定将它移到一个单独的库项目中,并添加到我的项目中。我引用了该项目,它成功构建。我可以使用图书馆里的所有东西。
“移动”是指:我将 XIB、XIB.DESIGNER 和 XIB.CS 文件复制到库中,并将 XIB 包含在项目中并调整了命名空间。
但是当我尝试运行应用程序时,我移动的控制器无法加载。我得到的错误是:
Objective-C 抛出异常。姓名: NSInternalInconsistencyException 原因:无法在包中加载 NIB: 'NSBundle (已加载)' 带有名称 '进度控制器'
如果我检查 iPhone 模拟器目录并打开我的 APP 包,我可以看到几个 NIB 文件,它们都来自我的主项目。但是,缺少 DLL 中的 NIB。我可以看到 myLibrary.DLL 和 myLibrary.DLL.MDB 作为别名。它们指向我项目的 BIN/DEBUG 目录。那里也没有NIB,只有DLL。
我完全感到困惑。有什么想法吗?
【问题讨论】:
【参考方案1】:MonoTouch 3 不支持库项目中的 XIB。这将在 MonoTouch 4 中得到支持。
【讨论】:
明确的答案。 :-) MT4 的计划发布是什么?您计划在该版本中进行哪些其他更改?以上是关于如果 XIB 在 DLL / 库中,则加载视图时出错的主要内容,如果未能解决你的问题,请参考以下文章