【问题标题】:ViewController class with XIB not working in Sample.frameworkXIB 的 ViewController 类在 Sample.framework 中不起作用
【发布时间】:2012-10-19 14:25:58
【问题描述】:

我创建了带有 NSObject 类的 sample.framework 项目。 所以它在每个项目中都可以正常工作,但是当我要在 sample.framework 中添加带有 .XIB 的 ViewController 类并尝试在任何项目中使用相同的框架时,它会说

由于未捕获的异常“NSInternalInconsistencyException”而终止应用程序,原因:“无法在包中加载 NIB:“NSBundle(已加载)”,名称为“SampleViewController”

请告诉我们,我可以在 sample.framework 中使用带有 XIB 的 ViewController 类吗???

在此先感谢您。

【问题讨论】:

    标签: iphone frameworks


    【解决方案1】:

    静态库不提供资源包,仅提供代码。您需要手动将共享 xib 添加到应用程序目标 Copy Bundle Resources 阶段,或者您可以使用单个共享 .bundle 和所有资源;如果是后者,则必须先获取捆绑包,然后从那里读取笔尖:

    NSString * path = [[NSBundle mainBundle] pathForResource:@"mybundle" ofType:@"bundle"];
    NSBundle * bndl = [NSBundle bundleWithPath:path];
    NSArray *nibs = [bndl loadNibNamed:@"mynib.xib" owner:self options:nil];
    

    [[Myviewcontroller alloc] initWithNibName:@"mynib.xib" bundle:bndl];
    

    如果您决定使用捆绑包,请不要忘记将 .bundle 文件添加到应用的目标 Copy Bundle Resources 阶段。

    【讨论】:

      猜你喜欢
      • 2013-11-27
      • 1970-01-01
      • 2013-03-02
      • 2015-09-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多