首页 > 解决方案 > 如何使用具有三个段的分段控制器更改标签的文本>

问题描述

对于类,我有一个具有三个段的分段控制器。第一段:让标签说你好 第二段让标签说再见 第三段让标签说你摇滚。我还需要添加一个由文本字段输入的名称,当按下按钮时,它会进入以 Hello、Goodbye 或 You Rock 开头的标签。图片显示了我到目前为止所拥有的。 第二张图片显示了我需要做的事情

标签: swiftxcode

解决方案


您可以获取所选段的标题并将其插入名称标签文本中。

class ViewController: UIViewController {

    // MARK: Outlets

    @IBOutlet weak var nameLabel: UILabel!
    @IBOutlet weak var nameTextField: UITextField!
    @IBOutlet weak var greetingControl: UISegmentedControl!

    // MARK: Properties

    var name: String? {
        return nameTextField.text
    }

    var greeting: String? {
        return greetingControl.titleForSegment(
            at: greetingControl.selectedSegmentIndex
        )
    }

    // MARK: Methods

    private func updateOutlets() {
        nameLabel.text = "\(greeting!), \(name!)!"
    }

    // MARK: Actions

    @IBAction func changeNameOnTap(_ sender: UIButton) {
        updateOutlets()
    }

    @IBAction func nameController(_ sender: UISegmentedControl) {
        updateOutlets()
    }
}

推荐阅读