Swiftui 迅捷本地化

Swiftui 迅捷本地化,swiftui,Swiftui,我在迅捷面临本地化问题。翻译有占位符时发生问题。我收到错误“实例方法'appendInterpolation'要求'LocalizedStringKey'符合'\u FormatSpecifiable'” 代码 翻译文件 “学校地点%@”=“我的学校地点是%@” 快捷视图 如果我做错了什么,请帮助我。您所做的是将一个已插入的字符串(带有%@)返回给插入的字符串。因此,您生成的字符串如下所示:“schoolLocation%@Some Name”。您可以这样做: struct Translatio

我在迅捷面临本地化问题。翻译有占位符时发生问题。我收到错误“实例方法'appendInterpolation'要求'LocalizedStringKey'符合'\u FormatSpecifiable'”

代码 翻译文件 “学校地点%@”=“我的学校地点是%@”

快捷视图
如果我做错了什么,请帮助我。

您所做的是将一个已插入的字符串(带有
%@
)返回给插入的字符串。因此,您生成的字符串如下所示:
“schoolLocation%@Some Name”
。您可以这样做:

struct Translation {
    struct school{
        static func location(name: String): LocalizedStringKey {
            return "schoolLocation \(name)"
        }
     }
}
然后你可以这样翻译:

var location = "Some Name"
.navigationBarTitle(Translation.school.location(name: location))

这回答了你的问题吗?不,我在LocalizedStringKey的结构中为动态值和键保留了占位符。我的代码非常适合静态本地化值。但是我得到动态值的编译错误。@您是否尝试过从键中删除
%@
,因为这不是必需的?你可以有“学校地点”=“我的学校地点是%@”;在您的翻译文件中。仍然存在编译错误“实例方法'appendInterpolation'要求'LocalizedStringKey'符合line.navigationBarTitle(((translation.school.location)(location)“)上的''U FormatSpecifiable'”)是否有办法将本地化值分配给字符串?这是我的错误
struct Translation {
    struct school{
        static func location(name: String): LocalizedStringKey {
            return "schoolLocation \(name)"
        }
     }
}
var location = "Some Name"
.navigationBarTitle(Translation.school.location(name: location))