本文介绍了如何在 swift 4 中创建自定义 getter 方法的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试为我的财产创建一个自定义的 setter 方法.下面是我的代码.

I am trying to create a custom setter method for my property. Below is my code.

我收到警告尝试在自己的 getter 中访问myProperty"

I am getting a waringAttempting to access 'myProperty' within its own getter

var myProperty:String{
    get {

        if CONDITION1 {
            return CONDITION1_STRING
        }else if CONDITION2 {
            return CONDITION2_STRING
        }else{
            return myProperty
        }

    }

    set{

    }
}

我的代码有什么问题.任何机构都可以帮助解决这个问题.

What is wrong in my code. can any body help to fix this.

推荐答案

创建支持 ivar 并添加自定义 setter:

Create a backing ivar and add a custom setter:

private _myProperty: String
var myProperty: String {
    get {
        if CONDITION1 {
            return CONDITION1_STRING
        } else if CONDITION2 {
            return CONDITION2_STRING
        } else {
            return _myProperty
        }
    }
    set {
        _myProperty = newValue
    }
}

这篇关于如何在 swift 4 中创建自定义 getter 方法的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

07-18 11:15