macos - 获取 OS X 框架中资源的 URL

标签 macos cocoa frameworks

我想获取 OS X 框架中的核心数据模型的 URL。我尝试过使用 [NSBundle mainBundle] urlForResource]...但它从正在运行的应用程序而不是框架获取的包。

那么正确的方法是什么?

最佳答案

解决方案

您需要框架中的一个类(任何),然后您就可以使用它

Class frameworkClass = ... //(self.class or NSClassFromString or [myClass class])
NSBundle *frameworkBundle = [NSBundle bundleForClass:frameworkClass];
NSURL *url = [frameworkBundle urlForResource:...];

示例。

我的框架中经常有一个类:

NSBundle *bundle = [NSBundle bundleForClass:[self class]];
NSURL *url = [bundle URLForResource:@"image" withExtension:@"jpg"];

关于macos - 获取 OS X 框架中资源的 URL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26897206/

相关文章:

android - 如何在 Mac Eclipse-SDK 上从 Android AVD 切换到真实硬件?

ios - UndoManager运行循环分组将如何在不同的线程上下文中受到影响?

ios - 在不使用 cocoapods 的情况下向现有项目添加框架

objective-c - -[NSArray lastObject] 是否记录为返回自动释放的对象?

xcode - 将 header 添加到框架以进行发布

php - 为什么 PHP 中的 MVC 框架在请求之间不保留?

macos - 在启动应用程序之前自动检测 JRE 版本并在 MAC OS X 上安装所需的版本

objective-c - 难倒了 [[NSFileManager defaultManager] URLForUbiquityContainerIdentifier :nil] keeps returning nil

cocoa - 我如何知道 NSWindow 已使用关闭按钮关闭?

macos - Cocoa 应用程序的应用程序配置?