如何获取标签以不断显示int(swift4)

时间:2018-07-15 16:40:33

标签: swift override swift4 constants var

我想知道是否有一种方法可以使标签显示什么int。基本上覆盖所有的if语句。我知道我可以做这个if语句,但是我只是问这个问题,看看我是否可以编写更有效的代码。

                $htacces = $sub_attrs['htaccess']
                $content = $htacces['content']
                $data = join($content, "\n")

                $auth_file = "sgsdgsdfgsdfg"

                notice inline_epp($data)

在此代码中您看到label.text = String(time)重复了两次。我正在尝试查看是否可以编写此代码,以使其仅出现一次。

1 个答案:

答案 0 :(得分:1)

有几种方法可以执行此操作,可以创建其他方法,如下所示:

class ViewController: UIViewController {

    var time = -3

    @IBOutlet var label: UILabel!

    @IBAction func method1() {
        self.incrementAndDisplayTime()
    }

    @IBAction func method2() {
        self.incrementAndDisplayTime()
    }

    private func incrementAndDisplayTime() {
        self.time += 1
        label.text = String(time)
    }
}

或者在设置时间时显示时间:

class ViewController: UIViewController {

    var time = -3 {
        didSet {
            self.label.text = String(time)
        }
    }

    @IBOutlet var label: UILabel!

    @IBAction func method1() {
        self.time += 1
    }

    @IBAction func method2() {
        self.time += 1
    }

}

或从另一个调用一个方法:

class ViewController: UIViewController {
    var time = -3
    @IBOutlet var label: UILabel!

    @IBAction func method1() {
        self.method2()
    }

    @IBAction func method2() {
        time += 1
        label.text = String(time)
    }
}