拆分inputTextField.text并显示结果的时间

时间:2017-08-30 16:24:38

标签: ios swift

我是Swift的新手,我正在尝试更改Start Developing iOS Apps (Swift)操作方法以更好地理解它。我用这个Main.storyboard

创建了一个简单的单一视图应用程序

Screenshot

这是ViewController.swift

import UIKit

class ViewController: UIViewController {
    @IBOutlet weak var inputTextField: UITextField!
    @IBOutlet weak var pauseHorizontalSlider: UISlider!
    @IBOutlet weak var outputLabel: UILabel!

    @IBAction func displaySplittedString(_ sender: UIButton) {
        outputLabel.text = inputTextField.text
    }
}

如何将字符串inputTextField.text拆分为字符并在outputLabel.text中显示每个字符x毫秒? xpauseHorizontalSlider的值,其最小值为100,最大值为1000?

1 个答案:

答案 0 :(得分:1)

SG。像这样:

func show(string: String, milliseconds: Int, index: Int = 0) {
    DispatchQueue.main.asyncAfter(deadline: .now() + .milliseconds(milliseconds)) {
        label.text = String(string[index])
        if index < string.characters.count - 1 {
            show(string: string, milliseconds: milliseconds, index: index + 1)
        }
    }
}

let stringArray = Array(inputTextField.text!.characters)
show(string: stringArray, milliseconds: 500)