首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >SwiftUI定位

SwiftUI定位
EN

Stack Overflow用户
提问于 2020-08-01 16:12:48
回答 1查看 267关注 0票数 2

我在SwiftUI面临本地化问题。当翻译有占位符时,问题就会发生。我得到了错误“实例方法'appendInterpolation‘要求'LocalizedStringKey’符合'_FormatSpecifiable'"

代码

代码语言:javascript
复制
struct Translation {
    struct school{
        static var location: LocalizedStringKey {
            return "schoolLocation %@"
        }
     }
}

翻译文件

"schoolLocation %@“=”我的学校位置是%“;

SwiftUI视图

代码语言:javascript
复制
var location = "Some Name"
.navigationBarTitle("\(Translation.school.location) \(location)") 

如果我做错了什么,请帮助我。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-09-06 09:01:28

您要做的是将一个已经用%@插入的字符串返回给一个内插字符串。因此,您生成的字符串如下所示:"schoolLocation %@ Some Name"。你可以这样做:

代码语言:javascript
复制
struct Translation {
    struct school{
        static func location(name: String): LocalizedStringKey {
            return "schoolLocation \(name)"
        }
     }
}

然后你可以像这样使用你的翻译:

代码语言:javascript
复制
var location = "Some Name"
.navigationBarTitle(Translation.school.location(name: location))
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63207339

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档