使用&User Defined Runtime Attributes&在情节提要内本地化视图 [英] Localize a view within a storyboard using "User Defined Runtime Attributes"

查看:47
本文介绍了使用&User Defined Runtime Attributes&在情节提要内本地化视图的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我当前有一个semi-automated way来本地化我的视图。但是,今天我在IB中发现了一个有趣的部分,它似乎建议我可以从Interface Builder中本地化我的视图。

因此,在IB中,您可以在身份检查器中定义选定对象的运行时属性。因此,对于我的UILabel,我可以将标签的text键盘路径设置为字符串Hello World

但是,当我在Type = Localized String中选择Type = Localized String,然后选择Localized.strings中的键名时,我得到的不是翻译后的字符串,而是我在IB中输入的值(也就是键)。

我不明白,这个机制应该是怎么工作的。我希望喜欢能够这样翻译我的观点,有什么想法吗?

推荐答案

"用户定义的运行时属性"文档很少。我从某本书上读到的记忆是,UDRA最初是为MacOSX编程实现的,所以"本地化字符串"类型可能是iOS目前不完全支持的特性。

有趣的是,他翻译的是故事板预览(Xcode 4.5.1)中的字符串,但后来在编译的iOS应用程序中,他只是注入了密钥字符串。

我现在正在考虑的一个解决方案是创建一个小助手类,即在viewDidLoad上检查视图的标题/文本字符串中是否有像"key"这样的关键字,例如"XYControllerTitleKey",然后将其作为NSLocalizedString-method。

更新: 在此期间,似乎有一种使用UDRA的方法:

Storyboard/XIB and localization best practice

和作为结果的教程(link)

这篇关于使用&User Defined Runtime Attributes&在情节提要内本地化视图的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆