【问题标题】:How to create Resource only Bundle for iPhone如何为 iPhone 创建仅资源包
【发布时间】:2011-10-30 02:38:39
【问题描述】:

我们正在尝试以特定语言包的形式提供我们的 nib。出于几个不同的原因,这会对我们有所帮助。

我的问题是关于设置仅资源包。

  1. 当我通过“New Project - Framework & Library - Bundle”菜单在 xcode 中添加一个新包时,xcode 将添加一个新的 xcodeproj 文件。它是否正确?我认为捆绑只是一个带有 .bundle 扩展名的目录。
  2. 如果我只想在我的包中包含 nib 文件,是否还需要一个可执行文件和一个 info.plist 文件?

到目前为止,我已经手动创建了一个捆绑目录并添加了 nib 文件。我可以访问它

NSBundle bundleWithPath

不确定是否加载正确,但是 bundleWithPath 方法不返回 nil。

但是当我尝试从包中打开一个 nib 文件时,我收到以下错误:

* 由于未捕获的异常而终止应用程序 'NSInternalIncon nsistencyException',原因:'无法加载 NIB 捆绑:'NSBundle (尚未加载)',名称为 'Nib''

我已将捆绑包添加到“复制捆绑资源”中。

感谢您提供任何信息。我确信我让这件事变得比应该做的更难。

编辑:我回去进行测试,添加了下面的行来查找 xib 而不是笔尖。它适用于xib,但不适用于nib。我认为这意味着 xib 可能没有被编译。

[languageBundle pathForResource:@"TestNib" ofType:@"xib"];

【问题讨论】:

    标签: iphone ios resources nsbundle


    【解决方案1】:
    1. 不,这是不正确的。您应该向当前项目添加一个新目标,而不是创建一个新项目。

    2. 1234563 /p>

    现在,您将 nib 文件放在一个包中而不是放在 .lproj 目录中是有原因的吗?此外,在我们提供进一步帮助之前,您需要展示一些实际代码。

    【讨论】:

    • 感谢您的回复。我想我并不完全理解目标和捆绑包是如何工作的。我可能会做更多的研究,并希望能得到更有根据的回应。再次感谢。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-04-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-09-18
    相关资源
    最近更新 更多