iOS动态内容最佳实践

时间:2014-03-04 15:36:04

标签: ios objective-c ios7 localization

我正在构建一个包含双语内容的iOS,用户可以随时在语言之间切换,内容将更新为所选语言。跟踪所有UIView组件以便于语言切换的最佳方法是什么?

我看到的选项是;

  1. 创建可能更改ViewController属性的每个元素;
  2. 为每个元素添加标记,并在需要时使用viewWithTag获取元素;
  3. 扔掉整个容器视图并从头开始重建。
  4. 老实说,这3个选项中没有一个听起来很理想,还有其他我没有想过的选择吗?什么被认为是跟踪多个元素的最佳方式?

    谢谢,

    编辑2014年3月3日

    更多细节。

    该应用程序将包含所有动态内容的两个版本,法语和英语。一次只能显示一种语言,但用户可以随时切换语言,并且所有显示的内容都应该更新。

    应用说明。 该应用程序是灌输的一部分,将以横向方式在Kiosk模式下运行。屏幕的左手2/3将是水平滚动视图,用户可以通过该视图来浏览内容。当用户看到他们希望进一步调查的内容时,垂直滚动视图将从底部向上滑动并填充屏幕的右手1/3。然后,用户可以通过内容的详细信息进行分页。正是这种动态的细节内容,我目前正致力于根据语言进行更改。

2 个答案:

答案 0 :(得分:1)

我要做的是将所有“基本”组件(UILabelUIButton和其他组件)子类化,并让它们响应您的控制器发送的全局自定义NSNotification用户使用全局通知中心([NSNotificationCenter defaultCenter])切换语言。这样,任何人都有机会更新。

答案 1 :(得分:1)

在最近的本地化尝试中,我们只是将每个可见字符串作为一个出口并将它们定义为NSLocalizedString,然后我们为每种语言都有plist字典。完成所有设置需要一段时间,但一旦它在那里就相对容易维护!

不是说这是最好的方式,但这就是我们所做的!

https://developer.apple.com/internationalization/

该链接可能会对您有所帮助! :)