iOS框架和类别导入

Peb*_*bie 8 objective-c ios objective-c-category

我刚刚开始创建自己的框架重新组合一些有用的帮助器,工具,工具等.一切正常,我只是想知道是否可以直接在我的主头文件框架文件中导入我的类别.

例如,我的框架名为myFramework.我在公共标题中放了一个类名myFramework.h,我写了所有的导入:

#import "MyCategory+Helper.h"
#import "MyOtherCategory+Helper.h"
#import "AClass.h"
...
Run Code Online (Sandbox Code Playgroud)

Then I build my framework and distribute it to my team developers.

What I expect is that other developers just have to import to access of all of my framework's categories. It's ok when I subclass instead of using categories but it isn't what I expect.

For the while, I use LoadableCategory.h to make my categories work in my framework and specify to my developers that they should use -ObjC flag in "Other Linker flags" settings and import each category like this :

#import <myFramework/MyCategory+Helper.h>
#import <myFramework/MyOtherCategory+Helper.h>
...
Run Code Online (Sandbox Code Playgroud)

May be it isn't possible but I wonder why ? I miss something :)

Thank you ! Pebie

PS : Sorry for my english...

Peb*_*bie 4

正如雷德莫夫船长所说,

我犯了一个错误。经过几次尝试,我发现使用-all_load链接器标志它甚至可以用于类别导入。我的错误在于我的主头文件中:导入错误,缺少一些内容等。最后在设置-all_load标志后没有重新加载我的项目。

现在我已经在myFramework.h

#import "MyCategory+Helper.h"
#import "MyOtherCategory+Helper.h"
#import "AClass.h"
...
Run Code Online (Sandbox Code Playgroud)

在我使用该框架的项目中:

1/ 设置“其他链接器标志”-all_load(如有必要,重新加载 XCode)

2/举例#import <myFramework/myFramework.h>来说myProjectApp-Prefix.pch

这样我就不必导入项目中的所有其他内容。尽管添加框架后第一次需要重新启动 XCode,但一切似乎都正常。

谢谢 CaptainRedmuff,我已经测试了你的解决方案,但没有成功。经过多次测试就OK了!

*编辑一切正常,直到我去使用我的类别之一的班级。XCode 指出我有一个错误,例如类别不存在。当我清理代码时遇到同样的问题:((

没有可见的接口...声明选择器...

**编辑如果我导入<myFrameWork/myFramework>myProjectApp-Prefix.pch不在 内#ifdef __OBJC__ conditional,那就可以了。