界面生成器无法看到静态库中的类

13
我已经将一些UIView子类重构为静态库。然而,当使用Interface Builder为使用该静态库的项目创建视图组件时,我发现它不知道库中的类。我需要做什么才能使类接口对Interface Builder可见?
更新:正确的答案是将头文件拖到“XIB浏览器”中。可以从finder窗口将“.h”文件拖动到此图像中标识的窗口区域:alt text http://img211.imageshack.us/img211/1221/xibbrowser.png

好问题,好解决方案 - 感谢Teabot和Reed Olsen! - Till
4个回答

8

尝试将静态库拖放到Interface Builder的xib浏览器中。虽然我没有尝试过使用静态库,但概念是相同的。当您将头文件拖入IB时,可以访问这些类。


将头文件直接拖入XIB浏览器/资源管理器中是可行的 - 将静态库拖入则不行。 - teabot

4

LexH,在构建静态库时尝试使用 -ObjC 标志进行链接。这对我有用...约一年时间 :-) 我发现这篇文章,因为问题在新的OSX安装和xcode升级后又出现了。但它在XCode 3.1.2中有效。

  • David

1

我遇到了同样的问题。将库或头文件拖到XIB浏览器中也没有用。读取类文件也不行。所以我打电话给:

[MyLibraryClass version];    // Substitute your class name for "MyLibraryClass".

这个方法可行。version是NSObject的一个类方法,因此所有继承自NSObject的子类都会继承它。


1

添加与LexH相同的问题。它只在我调用虚类方法时才起作用。 问题是我没有将我的静态库添加到目标下的“链接二进制文件库”中。 奇怪的是其他所有东西都能正常工作。

我按照这个指南链接我的静态库创建静态库


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接