无法实例化iOS静态库

时间:2016-02-04 05:59:49

标签: ios objective-c xcode uiviewcontroller static

我正在iOS中创建一个静态库。我正在使用故事板文件。为此,我创建了一个名为OfferWallResources.bundle的资源包文件,其中添加了名为Offerwall.storyboard的故事板文件。我在故事板中有一个UIViewController标识符OfferWallViewController:当我尝试在静态库中实例化它时,我收到以下错误消息:

Interface Builder文件中的未知类OfferwallViewController

实例化UIViewController的代码如下:

NSBundle *bundle = [NSBundle bundleWithURL:[[NSBundle mainBundle] URLForResource:@"OfferWallResources" withExtension:@"bundle"]];
    UIStoryboard *s=[UIStoryboard storyboardWithName:@"Offerwall" bundle:bundle];
    OfferwallViewController *o=[s instantiateViewControllerWithIdentifier:@"OfferwallViewController"];

我还将OfferwallViewController作为故事板的初始UIViewController并尝试使用以下代码:

OfferwallViewController *o=[s instantiateInitialViewController];

但是,当我在静态库中实例化UIViewController时,我仍然面临同样的问题。

我尝试点击链接:Xcode 6 Strange Bug: Unknown class in Interface Builder file 但是当我在给定viewcontroller的Module选项中按Enter键时没有任何反应。

我仍然没有得到我错的地方。我正在使用Xcode 7.2。

1 个答案:

答案 0 :(得分:0)

它可能无法将静态库检测为模块。

解决方法可以是在当前应用程序中继承OfferwallViewController,然后在故事板中使用子类。

PS:我认为静态库并不意味着存储资源,如故事板,xib或图像。你应该使用Xcode Frameworks。