使用例
的问题
似乎IDE不知道〜自动嵌入与静态lib相关联的资源(例如PNG文件)。
任何帮助将不胜感激。
答案 0 :(得分:1)
没有任何方法可以通过链接到该库来自动将资源从静态库复制到另一个目标(就像使用框架一样)。
我能找到的最佳解决方法是将库的资源放在以“.bundle”结尾的目录中(例如,MyLibraryResources.bundle)。 Xcode(和Finder)会将此目录视为一个单元。然后,使用该库的目标只需将单个资源(bundle)添加到项目中。它并不完美,但它很容易。
在您的库中,当引用捆绑包中的资源时,您只需执行以下操作:
NSString *pathToSomeImage = [[NSBundle mainBundle] pathForResource:@"MyLibraryResources.bundle/SomeImage.png" ofType:nil];
捆绑包可能有点麻烦,因为Finder以不同于普通目录的方式对待它们。您可以通过在库项目中添加目标来更轻松地处理它们,该目标通过复制资源来组装包。