【问题标题】:Localized XIB files not copied from folder base.lproj未从文件夹 base.lproj 复制的本地化 XIB 文件
【发布时间】:2016-04-10 23:43:50
【问题描述】:

我使用每种语言的基本国际化和可本地化字符串本地化了我的所有 xib 文件。我的本地化 xib 的文件夹结构是例如像这样

base.lproj/LoginView.xib
de.lproj/LoginView.strings
en.lproj/LoginView.strings

在模拟器上一切正常!!在设备上我收到错误

Could not load NIB in bundle: 'NSBundle </var/mobile/Containers/Bundle/Application/FCAF9E1E-7871-4DC4-8B2B-0B83F94585F0/myApp.app> (loaded)' with name 'LoginView''

通过以下命令,我检查了每个设备上可用的资源:

print(NSBundle.mainBundle().pathsForResourcesOfType("nib", inDirectory: nil))

在这里,我看到模拟器上的 base.lproj 文件夹中的所有 base-xib 都可用,但在真实设备上却没有。这些文件只是在真实设备上丢失。

什么有效:在真实设备 xibs(!) 上,例如当我将每个本地化文件的可本地化字符串更改为 xib 时,en.lproj 或 de.lproj 会被复制。

我已经进行了清理,清理了 Build 文件夹、派生数据文件夹,当然还从手机中删除了该应用程序。我还重新启动了一切(正如许多人所建议的那样)。没有任何效果。

什么可以阻止 Xcode 将 base.lproj 文件夹中的文件复制到真实设备? (因为 en.lproj 和 de.lproj 中的 xib 被复制了)

【问题讨论】:

    标签: ios xcode localization xib


    【解决方案1】:

    我最终得到了一个我在任何地方都找不到的解决方案。因此,如果它可以帮助某人:

    1. 我从“复制捆绑资源”构建阶段删除了所有本地化的 xib 文件
    2. 我从项目中删除了所有本地化的 xib 文件
    3. 我将所有 xib 文件从 base.lproj 文件夹复制回父文件夹
    4. 我删除了所有包含内容的本地化文件夹(en.lproj,...)
    5. 我将文件一一添加到项目中并再次本地化

    【讨论】:

      猜你喜欢
      • 2011-04-11
      • 1970-01-01
      • 2021-10-22
      • 2012-02-05
      • 1970-01-01
      • 1970-01-01
      • 2013-08-27
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多