基本上,我有一个函数,其中已经创建了几个对象,而另一个函数是我试图访问这些对象。如下所示:
func createButtons() {
var myButton01 = BigButton.createbutton()
var myButton02 = BigButton.createbutton()
}
正如您所看到的,我正在尝试访问对象以将其与字典中的键配对。
func setupConstraints() {
var myButtonDictionary = ["myButton01": myButton01, "myButton02": myButton02]
...
}
如何在不必将第二个功能移动到第一个功能的情况下使其可访问。有没有办法让对象可以访问其他函数?
答案 0 :(得分:1)
创建您正在使用的类的myButton01和myButton02属性,或者如果没有类,只需将变量放在函数之外。
如果没有课,你就会这样做:
var myButton01: BigButton? = nil
var myButton02: BigButton? = nil
func createButtons() {
var myButton01 = BigButton.createbutton()
var myButton02 = BigButton.createbutton()
}
func setupConstraints() {
var myButtonDictionary = ["myButton01": myButton01!, "myButton02": myButton02!]
...
}
答案 1 :(得分:0)
通常,您可以在其他构造中使用这些函数,例如类,这些对象将是实例变量。
class BigButton {
class func createButton() -> BigButton {
return BigButton()
}
}
class Foo {
var myButton01: BigButton?
var myButton02: BigButton?
func createButtons() {
myButton01 = BigButton.createButton()
myButton02 = BigButton.createButton()
}
func setupConstraints() {
var myButtonDictionary = ["myButton01": myButton01, "myButton02": myButton02]
}
}