gpt4 book ai didi

ios - 应用程序启动时在哪里声明访问 ViewController 属性的变量?

转载 作者:行者123 更新时间:2023-11-30 12:32:51 24 4
gpt4 key购买 nike

所以我有一个类,我想在应用程序启动后立即创建一个实例。我想从 ViewController 中的开关/切换初始化它的一些属性。

这是我正在尝试创建实例的类:

import Foundation

class PropertyCollection {
var property1: Bool

init (property1: Bool) {
self.property1 = property1

}

func disableAll() {
self.property1 = false

}

func enableAll() {
self.property1 = true

}

func info() -> String {
return "The properties are: \(property1)"
}

}

所以:将声明放入 AppDelegate.swift 中会出现错误(“使用未解析的标识符“property1Switch””):

func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool {

var thePropertyCollection: PropertyCollection = PropertyCollection(property1: property1Switch.isOn)

return true
}

添加“ViewController”。在“property1switch”前面也没有帮助。我收到另一个错误(“实例成员'property1Switch'不能在类型'ViewController'上使用”)

func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool {

var thePropertyCollection: PropertyCollection = PropertyCollection(property1: ViewController.property1Switch.isOn)

return true
}

但我并不想“在“ View Controller ”类型上使用“property1Switch”类型”。我以为这就是你引用其他类(class)内容的方式?

最佳答案

应该是这样的:

看到您正在初始化该对象,因此您必须为其提供初始值。

func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool {

var thePropertyCollection: PropertyCollection = PropertyCollection(property1: true)

return true
}

关于ios - 应用程序启动时在哪里声明访问 ViewController 属性的变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43272636/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com