首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >框架中转换的字符串资源不被Xcode中导入框架的应用程序使用。

框架中转换的字符串资源不被Xcode中导入框架的应用程序使用。
EN

Stack Overflow用户
提问于 2017-11-05 15:53:42
回答 1查看 218关注 0票数 1

我有一个跨平台(iOS,watchOS和macOS)应用程序。因此,我在Xcode中创建了一个框架,并将共享文件(在所有平台上工作的源代码)放入框架中。

然后我翻译了它们。这个应用程序运行良好。唯一的问题是,框架中转换的字符串资源从未被应用程序使用过。

如果我将字符串资源的内容从框架中复制出来并插入到应用程序的字符串资源中,它就能工作。但我不认为这样做是个好主意。

对于如何使应用程序直接使用框架中的字符串资源,有什么想法吗?

这是故意的,还是我应该向苹果提交的一个bug?

Xcode 9.1 (9B55),macOS High塞拉利昂10.13.1 (17B48) Swift 4.0.2

这里可以找到一个示例项目。https://www.dropbox.com/s/c6bdp28rmk9rxii/Framework%20Translation%20Issue.zip?dl=0

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-11-06 02:23:11

事实证明,框架中的NSLocalizedString必须显式地告诉框架的包。或者调用框架的应用程序将使用主包查找本地化资源。

代码语言:javascript
复制
NSLocalizedString("Test", tableName: nil, bundle: bundle, comment: "Test")

您可以使用init(for: AnyClass)allFrameworks: [Bundle]和过滤器来获取框架的包。

您不能直接使用包的id,除非您确信它只固定在一个平台上,以后不会更改。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/47123551

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档