Objective c 接口生成器加载错误的类
我创建了一个名为Objective c 接口生成器加载错误的类,objective-c,xcode,macos,interface-builder,static-libraries,Objective C,Xcode,Macos,Interface Builder,Static Libraries,我创建了一个名为JWTextView的自定义NSTextView子类。它是一个单独的Xcode项目的一部分。该项目有一个创建包含此类的静态库的目标。现在,我将这个子项目添加到主项目的MainProject/Libraries/JWKit(在Finder中)下,并将其添加到Xcode中。我使主项目的目标依赖于子项目的库目标,并在主目标中链接库。我还将MainProject/Libraries/**添加到库和标题搜索路径中 现在我正试图在我的主项目中使用这个视图。我在我的一个xib中添加了一个NST
JWTextView
的自定义NSTextView
子类。它是一个单独的Xcode项目的一部分。该项目有一个创建包含此类的静态库的目标。现在,我将这个子项目添加到主项目的MainProject/Libraries/JWKit
(在Finder中)下,并将其添加到Xcode中。我使主项目的目标依赖于子项目的库目标,并在主目标中链接库。我还将MainProject/Libraries/**
添加到库和标题搜索路径中
现在我正试图在我的主项目中使用这个视图。我在我的一个xib中添加了一个NSTextView
,并将其类更改为JWTextView
。我的代码中还有一个IBOutlet JWTextView
,并在用户交互时对其调用一些方法<代码>JWTextView.h已导入。所有的东西都编译文件
但是,一旦我调用了在JWTextView
子类中实现的这个文本视图上的方法,应用程序就会崩溃,出现无法识别的选择器错误:
-[NSTextView myCustomMetod:]: unrecognized selector sent to instance 0x101901a80
我检查了一下,它实际上是一个NSTextView
实例,即使ivar是JWTextView
,我也在IB中设置了类
如果我只是将类添加到我的主项目中,它工作得很好,但不是作为子项目和静态库。编译器优化了它,因为我没有按名称引用该类(除了ivar,它似乎没有帮助)
添加
[JWTextView类]
到applicationdFinishLaunching:
修复了问题。在将库链接到应用程序目标时,使用-ObjC
链接器开关而不是您的解决方法如何?在此处找到了解决方案: