localization - IOs7 多 Storyboard本地化问题

标签 localization ios7 xcode5 xcode-storyboard

我使用了几个 Storyboard,我刚刚决定将它们本地化(.strings 文件已由 Xcode 生成)。

我注意到在 Build Phases > Copy Bundle Resources 中,所有与本地化相关的资源都显示为红色。

Xcode screenshot

在运行时,本地化仅适用于主 Storyboard。使用 Localizable.strings 进行本地化也可以。但它不在其他 Storyboard上。

我尝试重新启动 Xcode,但没有任何改变。 (参见 Base internationalization and multiple storyboard not working right)

我的本​​地化 Storyboard是以前编译的。如果我添加另一个 Storyboard,对其进行本地化并启动编译,它会失败并出现此错误:

*** 由于未捕获的异常“NSInvalidArgumentException”而终止应用程序,原因:“无法在包 NSBundle 中找到名为“维护”的 Storyboard (...)

你有解决这个问题的想法吗?

最佳答案

此错误可能是由于您没有实现您在应用程序设置中选择本地化的多种语言之一

为了在 Storyboard中实现一种语言:

  1. 选择 Storyboard
  2. 在右侧面板上,转到文件检查器选项卡(左起第一个)
  3. 本地化中,勾选所有语言

您现在有两种本地化 Storyboard的方法:

  • 您可以通过选择Localizable Strings 来为您的语言创建一个.strings 文件,这将生成一个字符串列表,xcode 会在您的 Storyboard 中找到这些字符串。
  • 或者您可以通过选择 Interface Builder Cocoa Touch Storyboard 创建一个“子” Storyboard,这会为特定语言创建不同版本的 Storyboard。

到目前为止,如果您添加新字符串,我只找到一种在 xcode 中刷新 .strings 文件的方法:只需取消选中并重新选中语言,然后在询问时选择“替换文件”。 Apple also provides a tool你可以在终端中使用。最后there's a script它会自动执行。

关于localization - IOs7 多 Storyboard本地化问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19063993/

相关文章:

ios - XCode5 assets目录的切片工具如何使用切片的图片

ios - 使用自动布局和界面生成器垂直展开/间隔屏幕元素

ios - UICollectionView 在 iOS 7 上运行时不显示

c++ - 当函数缺少返回值时,编译器会生成警告而不是错误?

c# - 查找 CultureInfo 的资源

asp.net-mvc - 该字段必须是数字。如何将此消息更改为另一种语言?

iOS 应用程式发售,除香港外都很好用

php - PHP gettext 中的变量

iPad 上的 iPhone 应用程序测试似乎失败(没有任何反应)

ios - 使用蓝牙计算两部或多部 iPhone 之间的距离