2017-06-12 3 views
0

UIlabel.textのあるビューから対応する別のラベルを表示する別のビューに切り替えるボタンアクションを実装しました。2つの異なるビューから複数のラベルを切り替える

私が使用している方法は、現時点では以下の通りである:

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のラベルを使って変数を構築することを考えていました。同じインデックスを共有し、1つのステートメントを実装すると、すぐに正しいコンテンツを手に入れることができます。ボタン。

私は正しい方法で行っていますか?

私とあなたの親切な助けをお読みになり、ありがとうございます。

よろしく、

答えて

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] 
} 
+0

第二の方法【選択最初の作業は100%をテストする必要があります。ありがとう! – readytotakeoof

関連する問題