ios – 使用InAppSettingsKit从Settings.bundle本地化字符串

ios – 使用InAppSettingsKit从Settings.bundle本地化字符串,第1张

概述我正在尝试使用InAppSettingsKit来管理我的设置.这将使用带有.plist文件的Settings.bundle和要翻译的每种语言的.strings文件. 我可以使用Setting应用程序确认我的字符串的翻译在我的应用程序之外正常工作.但是当我在我的应用程序中时,翻译没有发生. 我认为它归结为这样的代码,来自InAppSettingsKit类IASKSettingsReader,有一些我 我正在尝试使用InAppSettingsKit来管理我的设置.这将使用带有.pList文件的Settings.bundle和要翻译的每种语言的.strings文件.

我可以使用Setting应用程序确认我的字符串的翻译在我的应用程序之外正常工作.但是当我在我的应用程序中时,翻译没有发生.

我认为它归结为这样的代码,来自InAppSettingsKit类IASKSettingsReader,有一些我认为对我有用的日志语句:

- (Nsstring*)TitleForStringID:(Nsstring*)stringID {    NSLog(@"%@",[_bundle localizedStringForKey:stringID value:stringID table:self.localizationtable]);    NSLog(@"%@",[_bundle localizedInfoDictionary]);    return [_bundle localizedStringForKey:stringID value:stringID table:self.localizationtable];}

如果我理解正确,这应该使用名为self.localizationtable的表作为翻译的来源.这个值只是“Root”.它不是所选语言中Root.strings文件的路径,因此我猜测方法localizedStringForKey:value:table:必须使用一些指向正确路径的全局系统引用.

我已经确认字符串文件名是“Root.strings”,大概是R,包括在Root.pList文件中.

[_bundle localizedInfoDictionary]返回(null);它正在为英语和法语的两种语言设置执行此 *** 作.

我不知道如何调试这个.谢谢你提供的所有帮助.

解决方法 我正在使用InAppSettingsKit本地化文本没有问题.我能想到的两件事你可以检查:你的Root.strings文件是否位于Settings.bundle的正确子目录中(英语和法语的en.lproj和fr.lproj?

Root.pList中是否有“Strings filename”条目?它应该只包含一个值为“Root”的字符串

总结

以上是内存溢出为你收集整理的ios – 使用InAppSettingsKit从Settings.bundle本地化字符串全部内容,希望文章能够帮你解决ios – 使用InAppSettingsKit从Settings.bundle本地化字符串所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/999622.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-21
下一篇 2022-05-21

发表评论

登录后才能评论

评论列表(0条)

保存