- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我想给标签一个包含多种字体的文本。这可以通过创建一个 NSMutableAttributedString
来完成。但是,我不确定如何格式化以下情况:
String(format: NSLocalizedString("%@ has replied in '%@'", comment: ""), username, conversationTitle)
我想给用户名和对话标题一个单独的字体。我想以最简单的方式来做到这一点。我的意思是:
username
。当 conversationTitle
与 username
相同,或者 conversationTitle
在 username
等中时,这会导致问题.等..NSLocalizedString 的
时很糟糕,我认为当这样创建字符串时,翻译人员会遇到麻烦。类似问题:Making text bold using attributed string in swift , Are there approaches for using attributed strings in combination with localization?其他的大多是不带参数的 NSLocalizedString
或带参数的 NSLocalizedString
的字符串文字。
最佳答案
首先,您应该在您的 .strings 中有一个更加通用和可读的键,例如:
"_REPLIED_IN_" = "%@ has replied in %@";
不要像您在示例中那样混淆键和值。此外,稍后可以更轻松地查看代码中是否存在未本地化的硬编码字符串。
现在,有一个问题,因为在英语中,它可能是这样的顺序,但在其他语言中则不一定。
所以改为:
"_REPLIED_IN_" = "%1$@ has replied in %$2@";
现在,我将使用粗体示例,因为它更容易,但您可以使用一些自定义标记来告诉您它需要加粗,例如 HTML、MarkDown 等。
在 HTML 中:
"_REPLIED_IN_" = "<b>%1$@</b> has replied in <b>%$2@</b>";
你需要将它解析成一个NSAttributedString
:
let translation = String(format: NSLocalizedString(format: "_REPLIED_IN_", comment: nil), userName, conversationTitle)
let attributedText = NSAttributedString.someMethodThatParseYourTags(translation)
由你来选择最简单的标签格式),根据你的需要:易于翻译者理解,并且易于解析(CocoaTouch 已经有 HTML 解析器等)。
关于swift - NSLocalizedString 中参数的不同字体,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54388164/
我正在尝试本地化我的应用程序,但应用程序在遇到我使用 localizedStringWithFormat 的本地化字符串时崩溃了。这是一个例子: cell.productRangeLabel.text
是否可以将 NSLocalizedString 基础结构(基于 localized.strings)与自定义定义的“本地化”结合使用? 问题是,有些语言对男性和女性有不同的措辞。我想在首次启动时询问用
有没有办法在界面生成器中插入 NSLocalizedString。例如,将标签文本设置为本地化字符串而不是静态字符串? 我真的很讨厌为每个需要本地化字符串的项目创建一个属性。 最佳答案 这篇文章可能会
我遇到了一个问题,即 NSLocalizedString 总是返回大写的字符串,而不管其输入如何。本地化工作 我假设我做了一些导致这种情况的事情,但我似乎无法 弄清楚到底发生了什么变化。 这是我的代码
我正在学习翻译我的申请,但我有一个问题。 如果设备语言尚未放入 Localized.string 中,会发生什么情况?例如我想在英文文件中使用单词“Hello”我在西类牙语文件中添加 HELLO =
我是 Objective-C 的新手。这是我的问题: 在我的两个字符串文件中有以下两个条目: (德语字符串文件) /* Class = "IBUILabel"; text = "Import to D
有人知道为什么我的本地化字符串被忽略吗? 谢谢。 最佳答案 文件Settings.bundle/XX.lproj/Root.strings仅在Settings.bundle中使用。 如果您想使用 NS
我想知道是否有人知道如何连接我的应用程序语言和 NSLocalizeStrings,例如:我的应用程序在 fr、ru、ro 上,但用户设备在 en 上,当用户打开应用程序时,它在 en 上,但在应用程
我需要在点击按钮时使用本地化来切换语言。 我试过了,错误是元素不刷新。 -它们设置如下: self.lblSectionMyPictures.text=NSLocalizedString(@"lblS
我在 Prefix.pch 中像这样为 NSLocalizedString 构建了一个宏: #undef NSLocalizedString #define NSLocalizedString(key
我正在尝试以编程方式本地化我的项目,因为基础国际化不会自动在 Storyboard上选取我的菜单项。我想本地化数组中的字符串。我遇到的具体问题是这段代码: - (void)viewDidLo
我有 2 个本地化字符串文件,一个用于罗马尼亚语,一个用于英语。在这两个文件中我都有这一行: 英语: "invalidSum" = "Invalid amount" 罗马尼亚语: "invalidSu
我正在开发我的第一个 Swift 应用程序。现在我想使用 NSLocalizedString 翻译 BUTTON 中的文本,但我不知道如何快速编写它。 这是我的 else-if 函数: overrid
我想给标签一个包含多种字体的文本。这可以通过创建一个 NSMutableAttributedString 来完成。但是,我不确定如何格式化以下情况: String(format: NSLocalize
我的项目基本语言是英语。我的模拟器/电话是英文的。这些项目支持英语、法语、荷兰语。 当应用程序首次启动时,即使手机是英文的,应用程序始终是法语。 当我调试并打印出这一行时: [NSLocale pre
我误解了 NSLocalizedString。 我有一个包含法语和英语 .strings 文件的项目。在项目目标 - 本地化中,我有 6 个法语和英语文件。 在 english.strings 文件中
好吧,我正式大吃一惊。前段时间我开始了一个 IOS 项目,一开始在本地化方面有点杂乱无章,因为我还不知道如何正确地做到这一点。 现在我决定从头开始进行本地化,因此丢弃了所有 .strings 文件,并
关闭。这个问题不符合Stack Overflow guidelines .它目前不接受答案。 我们不允许提问寻求书籍、工具、软件库等的推荐。您可以编辑问题,以便用事实和引用来回答。 关闭 4 年前。
我在调试我的 NSLocalizedString 实现时遇到了一些问题。应该很简单,但无论我做什么,函数只返回 KEY 字符串。 我正在使用 XCode 4.5 和 iOS6,所以我: 添加了一个名为
我有英文、日文、韩文的 Localizable.strings 文件。我无法从韩国文件中加载一些单词。我也检查了拼写、大写字母或小写字母。它是正确的。我还清理了项目,重置了模拟器并删除了设备上的应用程
我是一名优秀的程序员,十分优秀!