2

我创建了一个NSTextView名为JWTextView. 它是一个单独的 Xcode 项目的一部分。该项目有一个创建包含此类的静态库的目标。我现在将此子项目添加到MainProject/Libraries/JWKit(在 Finder 中)下的主项目中,并将其添加到 Xcode 中。我使我的主项目的目标取决于子项目的库目标,并且我将库链接到我的主目标中。我还添加MainProject/Libraries/**了库和标题搜索路径。

现在我试图在我的主项目中使用这个视图。NSTextView我在我的一个 xib 中添加了一个并将其类更改为JWTextView. 我的代码中也有一个IBOutlet JWTextView,并在用户交互时调用它的一些方法。JWTextView.h是进口的。一切都编译文件。

但是,一旦我在JWTextView子类中实现的这个文本视图上调用一个方法,应用程序就会崩溃并出现无法识别的选择器错误:

-[NSTextView myCustomMetod:]: unrecognized selector sent to instance 0x101901a80

我检查了一下,它实际上是一个NSTextView实例,即使 ivar 也是一个实例,JWTextView我在 IB 中设置了类。

如果我只是将类添加到我的主项目中,它可以正常工作,但不能作为子项目和静态库。

4

1 回答 1

0

编译器对其进行了优化,因为我没有在任何地方按名称引用该类(除了 ivar,这似乎没有帮助)。

添加[JWTextView class];applicationDidFinishLaunching:解决问题。

于 2012-12-08T16:41:10.407 回答