Swift 如何访问枚举中的静态值?

Swift 如何访问枚举中的静态值?,swift,Swift,我定义了以下枚举。 没有原始值,它是为了方便使用LocalizedString enum本地化{ 枚举Str{ 静态let title=NSLocalizedString(“myTitle”,注释:“”) 静态let name=NSLocalizedString(“myName”,注释:“”) } } //使用方法如下 打印(本地化的.Str.title)//我的标题 print(本地化的.Str.name)//James 我可以将其包装为以下函数来使用吗? 我想做一个函数,它接收键作为参数

我定义了以下枚举。
没有原始值,它是为了方便使用LocalizedString

enum本地化{
枚举Str{
静态let title=NSLocalizedString(“myTitle”,注释:“”)
静态let name=NSLocalizedString(“myName”,注释:“”)
}
}
//使用方法如下
打印(本地化的.Str.title)//我的标题
print(本地化的.Str.name)//James
我可以将其包装为以下函数来使用吗?
我想做一个函数,它接收键作为参数


func convertString(带键:String)->String{
return Localized.Str.key//我想这样做。
}
//我可以按如下方式使用它吗?
打印(转换字符串(带:“标题”)//我的标题
打印(转换字符串(带:“name”)//James
//本地化文件
“我的头衔”=“我的头衔”;
“我的名字”=“詹姆斯”;

您可以稍微更改代码:

enum Str: String {
    // Your cases
    case title = "myTitle"
    case name = "myName"
   // Create computed property or function
   var localized: Sting {
       NSLocalizedString(self.rawValue, comment: "")
   }
}
您可以这样使用它:

Str.name.localized

这会更符合人体工程学吗

enum Strings: String, CustomStringConvertible {
    case title = "myTitle"
    case name = "myName"
        
    var description: String {
        NSLocalizedString(rawValue, comment: "")
    }
}

为什么不使用
Localized.Str.title
而不是
“title”
@EmilioPelaez?这个问题假设enum无法修改。您想要的内容非常不清楚,而且您发布了三次的评论也没有做任何澄清。您甚至没有使用枚举案例。我投票结束此问题。此问题假设无法修改枚举。此问题假设无法修改枚举。