我正在尝试本地化一个包含值的文本视图,但没有成功!
这是我通常要做的事情:
// ContentView.swift
Text("Tomato")
/* replaced by */
Text(NSLocalizedString("text-tomato", comment: ""))
// Localizable.strings (en)
"text-tomato" = "Tomato";
但有了内在的价值,我不知道该怎么做:
// ContentView.swift
Text("3 Tomatoes")
/* or */
Text("(tomatoes.count) Tomatoes")
/* replaced by */
Text(NSLocalizedString("(tomatoes.count) text-tomatoes", comment: ""))
// Localizable.strings (en)
"%@ text-tomatoes" = "%@ Tomatoes";
/* or maybe */
"(tomatoes.count) text-tomatoes" = "%@ Tomatoes";
/* or maybe */
"%@ text-tomatoes" = "(tomatoes.count) Tomatoes";
我已经尝试使用%@
、%lld
、value
等,但没有成功。你有什么想法吗?
3条答案
按热度按时间f8rj6qna1#
谢谢您@Alexxnd
这就是对我有效的方法:
“TextfieldNotallweChar%@”->“没有权限字符‘%@’”
我在以下方面遇到麻烦:
xriantvc2#
您不应将
NSLocalisedString
与SwiftUI一起使用,而应使用普通的Text()
:不要忽视评论,它将有助于翻译过程中的上下文。
有关更多信息,请访问Preparing views for localization
eoigrqb63#
在发布了我的问题后,我终于找到了答案:
它就像一个护身符一样起作用!
其他示例:Localization with String interpolation in SwiftUI