通过函数 Swift 传递一个 Class (UILabel) 及其属性

Pass a Class (UILabel) with its properties through a function Swift

我想知道是否有人知道如何(如果可能的话)通过函数传递 UILabel 同时能够访问和更改其属性?这是我拥有的:

func plusMinusChange(minus: UILabel, plus: UILabel) {
    if (minus.hidden) {
        minus.hidden=false
        plus.hidden=true
    } else {
        minus.hidden=true
        plus.hidden=false
    }
}

我是这样称呼它的:

plusMinusChange(firstMinus, firstPlus)

我知道这可能真的不合逻辑,但我还是想试一试。如果您想知道,firstMinus 和 firstPlus 链接到故事板上的 UILabels。

调用方法(即在 class 或其他类型中定义的 func )需要第二个(和后续)参数的参数标签,而不是第一个参数。如果要更改调用站点需要的标签,请更改声明。

要在第一个参数上要求标签:

func plusMinusChange(#minus: UILabel, plus: UILabel) {

第二个不需要标签:

func plusMinusChange(minus: UILabel, _ plus: UILabel) {

没有必要使用条件if。您可以使用 !在 属性 前面切换其值如下:

minus.hidden = !minus.hidden
plus.hidden =  !plus.hidden