如何分别拆分字母和每个标签打印

时间:2017-07-31 18:55:41

标签: ios swift split uitextfield

我有像"123456"这样的字符串。我有6个标签。我需要拆分每个数字,我必须打印到每个标签。

就像我的标签是:

Lab1 Lab2 Lab3 Lab4 Lab5 Lab6    ====  In screen design

我的输出必须:

  1 2 3 4 5 6

如何分割每个数字以及我将如何在每个标签中显示..我也可以使用6 let或var来保存每个值,我可以显示它。但我不知道完成的功能。

2 个答案:

答案 0 :(得分:1)

给定text

let text = "123456"

您需要将其转换为Array String(s)

let list = text.characters.map { String($0) }

现在您可以检查数组是否包含至少6个元素,并将每个元素分配给每个标签的text属性

if list.count > 5 {
    lab1.text = list[0]
    lab2.text = list[1]
    lab3.text = list[2]
    lab4.text = list[3]
    lab5.text = list[4]
    lab6.text = list[5]
}

答案 1 :(得分:0)

您可以使用简单的ForIn循环:

 @IBOutlet weak var lbl1: UILabel!
 @IBOutlet weak var lbl2: UILabel!
 @IBOutlet weak var lbl3: UILabel!
 @IBOutlet weak var lbl4: UILabel!
 @IBOutlet weak var lbl5: UILabel!
 @IBOutlet weak var lbl6: UILabel!

 let word = "123456"

    func splitWord(){
    // Swift 3.1
        for (i,char) in word.characters.enumerated(){
            switch i {
            case 0:
                lbl1.text = "\(char)"
            case 1:
                lbl2.text = "\(char)"
            case 2:
                lbl3.text = "\(char)"
            case 3:
                lbl4.text = "\(char)"
            case 4:
                lbl5.text = "\(char)"
            case 5:
                lbl6.text = "\(char)"
            default:
                print("Out of bound")
            }
        }
    }