我正在开发一个 iOS 应用程序。我的任务之一是本地化。因此,我将所有字符串放入 NSLocalizedString(key,comment)
中,一切正常。
但我的新解决方案是创建一个 Singleton 类,它存储我在项目中使用的每个 String
。有了这个我有一个小但棘手的问题:命名。我是否需要为每个需要本地化字符串的类( View )创建一些字典?或者我应该为此使用前缀,或者返回具有良好、易于理解的属性名称的对象的函数?
P.S:我不想发明新轮子。我想创建将在项目中使用的本地化字符串的存储。所以,我的目标是使单例:
[[[StringStorage共享实例] getStringsForClass:self] objectForKey:@"title"];
或者类似的东西:
[StringStorage共享实例].stringTitleForMainView
最佳答案
你真的应该坚持使用NSLocalizedString
和NSLocalizedStringFromTable
。您还可以使用 NSBundle
方法 localizedStringForKey:value:table:
。
但是,如果您采取任何其他方式,您就是在重新发明轮子,并且您将无法使用 genstrings
命令行工具从源代码中提取所有字符串。
关于ios - 我应该如何在 iOS 项目中存储本地化字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14322730/