我实现了一个按钮操作,该操作从一个带有UIlabel.text的视图切换到另一个视图,该视图将显示另一个对应的特定标签。
我正在使用的方法,目前如下:
func switchCard(_ sender: Any) {
if item1.text == "Fabulae"{
item2.text = " expriment"
}
if item1.text == " simulacra"{
item2.text = "finxere"
}
if item1.text == "tergentes"{
item2.text = "icet"
} }
它的工作,但我需要为每个项目重复这么多次一百次,所以我想知道它是否存在更简单的方式
我正在考虑使用我的第1项和第2项标签来构建变量,这样它们将共享相同的索引并实现一个语句,当我按下按钮时,它会使swift能够选择正确的内容。 / p>
我会以正确的方式前进吗?
提前感谢您阅读我和您的帮助。
此致
答案 0 :(得分:0)
试试这个:
enum TypeName: String {
case fabulae = "Fabulae"
case simulacra = " simulacra"
case tergentes = "tergentes"
func getNeededText() -> String {
switch self {
case .fabulae: return " expriment"
case .simulacra: return "finxere"
case .tergentes: return "icet"
}
}
}
func switchCard(_ sender: Any) {
item2.text = TypeName(rawValue: item1.text ?? "")?.getNeededText()
}
或者您可以使用字典:
let pairs = ["Fabulae": " expriment", " simulacra": "finxere", "tergentes": "icet"]
func switchCard(_ sender: Any) {
item2.text = pairs[item1.text]
}