gpt4 book ai didi

ios - 在 applicationWillEnterForeground 使我的应用程序崩溃后更改 IBOutlets 值

转载 作者:可可西里 更新时间:2023-11-01 01:39:36 25 4
gpt4 key购买 nike

使用:XCode 7、iPhone 5 (iOS 8.3)、WiFi、可达性(检查互联网连接)。当我的应用程序处于后台并且我单击以打开我的应用程序时,它会检查连接并加载一些功能,并且在我尝试签名的功能之一中:

imageView.image = UIImage(named: "imagename")

错误: fatal error :在展开可选值时意外发现 nil

仅当我的应用程序将 applicationWillEnterForeground 中的 IBOutlet 值更改为主视图 Controller 时才会发生这种情况self.viewController.functionName()

class AppDelegate: UIResponder, UIApplicationDelegate {
var viewController:ViewController = ViewController()
func applicationWillEnterForeground(application: UIApplication) {
self.viewController.checkConn()
}
}

checkConn() 检查与 Reachability 的连接并更改 IBOutlets 值,如 .image 和 .text

有什么办法可以解决吗?

最佳答案

经过大量测试,我发现这个方法非常有效:

class AppDelegate: UIResponder, UIApplicationDelegate {
var window: UIWindow?
var viewController:ViewController?
func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject : AnyObject]?) -> Bool {
viewController = self.window!.rootViewController as? ViewController
return true
}
func applicationWillEnterForeground(application: UIApplication) {
viewController!.checkConn()
}
}

关于ios - 在 applicationWillEnterForeground 使我的应用程序崩溃后更改 IBOutlets 值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31271095/

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