【发布时间】:2015-04-01 06:39:05
【问题描述】:
这是场景。我在应用程序中有一组设置。例如,将我的应用程序视为视频播放器。所以有允许全屏、显示字幕等设置。所有这些设置都有布尔值,因为你可以打开或关闭它们。
这些设置应在应用程序内部以表格视图的形式显示。如果它们中的任何一个被激活或当用户点击它们以激活/停用它们时,您可以通过设置该单元格的复选标记附件视图来显示它。
由于我需要以这种方式仅在应用程序中显示设置,因此我不能简单地使用设置包。还有另一个问题。我需要本地化这些设置。
我最初的想法是为我支持的语言提供单独的 plist。
Settings_en.plist(英文)
Settings_sv.plist(瑞典语)
然后根据系统语言获取 plist 名称并显示其值。
let filePath = NSBundle.mainBundle().bundlePath.stringByAppendingPathComponent(NSLocalizedString("SETTINGS_PLIST", comment: ""))
但这并不理想,因为假设我正在运行瑞典语并且我将字幕设置更改为打开。现在我必须在两个 plist 中更新它。如果我将来添加更多语言,这将很快变得更加混乱。
有没有更好的方法来存储设置,更容易保存和获取并且还支持本地化?
【问题讨论】:
标签: ios uitableview swift localization settings