如何使用变量的字符串值来更改特定对象的文本

时间:2018-09-27 20:40:54

标签: swift xcode variables

所以可以说我声明了3件事。一个名为'x'的字符串变量和2个标签,一个名为'title',另一个名为'body'。我想发生的是这样:

'x'.text的值=“我想要的任何文本”

在整个代码中,我将使'x'的值在'title'和'body'之间变化,因此我希望可以基于x的值切换'title'或'body'的文本

1 个答案:

答案 0 :(得分:0)

如果我对您的理解正确,则可以使用Property Observers,例如willSet

import Foundation
import UIKit

let a = UILabel()
let b = UILabel()

var x: String = "Begining" {
    willSet {
        switch newValue {
        case "title":
            a.text = "A"
            b.text = "B"
            break
        case "body":
            a.text = "AA"
            b.text = "BB"
            break
        default:
            a.text = "Hello"
            b.text = "world"
        }
    }
}

x = "title"
print(a.text!)          //"A"
print(b.text!)          //"B"

x = "body"
print(a.text!)          //"AA"
print(b.text!)          //"BB" 

x = "some other string"
print(a.text!)          //"Hello"
print(b.text!)          //"world"

(这里,为简单起见,我在这里强制展开标签的text属性。)