You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

SwiftUI:如何让数组本地化注释在.xcloc文件中显示?

解决数组中LocalizedStringKey注释不显示在.xcloc文件的问题

问题出在你当前的写法上:你把字符串字面量直接转换为LocalizedStringKey存入数组,然后在Text控件上添加的comment是控件级别的注释,并非数组中每个字体名称对应的本地化条目注释,所以导出.xcloc文件时,每个字体重量的本地化条目不会关联你设置的注释。

想要让每个数组元素的注释在导出文件中显示,需要给每个LocalizedStringKey单独绑定注释,具体做法如下:

修正后的代码

let fontWeightNames: [LocalizedStringKey] = [
    LocalizedStringKey("Ultra Light", comment: "字体重量选项:超轻"),
    LocalizedStringKey("Thin", comment: "字体重量选项:细体"),
    LocalizedStringKey("Light", comment: "字体重量选项:轻量"),
    LocalizedStringKey("Regular", comment: "字体重量选项:常规"),
    LocalizedStringKey("Medium", comment: "字体重量选项:中等"),
    LocalizedStringKey("Semibold", comment: "字体重量选项:半粗"),
    LocalizedStringKey("Bold", comment: "字体重量选项:粗体"),
    LocalizedStringKey("Heavy", comment: "字体重量选项:特粗"),
    LocalizedStringKey("Black", comment: "字体重量选项:极粗")
]

var currentFontWeightName: LocalizedStringKey {
    fontWeightNames[fontWeights.firstIndex(of: currentFontWeight)!]
}

Text(currentFontWeightName)

说明

  • 每个LocalizedStringKey通过带comment的初始化方法创建,这样每个字符串的本地化条目都会绑定对应的注释。
  • 此时Text控件无需再添加comment,因为该注释是用于描述控件用途,而非本地化字符串的翻译提示。

这样修改后,重新导出.xcloc文件,打开后就能看到每个字体重量条目对应的注释了。

内容的提问来源于stack exchange,提问作者user14119170

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.07 19:05:20