Fre*_*son 9 xcode launch ios swift
didFinishLaunchingWithOptions当应用程序第一次开始运行时,是不是应该被调用?我在这个方法中设置了一个断点,当我在模拟器中运行应用程序时,断点不会被命中,这意味着该方法不会被调用.我试图在应用程序启动时从UserDefaults加载一些数据,但它完全被忽略了.我注意到的一件事是它默认情况下是一个private func而不是一个func.如果我摆脱了private,我收到一个警告,"UIApplicationDelegate中有一个几乎相似的可选要求".有人可以向我解释这意味着什么以及是否private func与被忽略的方法有关?当我在模拟器中运行我的应用程序时,该方法是否应该被调用?如果没有,我如何测试我的应用程序启动后是否正在检索数据?AppDelegatedo 中的所有其他方法都被正常调用(例如,该applicationDidEnterBackground方法完全正常).
Yan*_*ick 34
删除您的方法签名并让Xcode自动完成它
我也有问题,我didFinishLaunchingWithOptions的AppDelegate中的方法不会被调用.我的功能也标记为私有,看起来像这样
private func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool
Run Code Online (Sandbox Code Playgroud)
问题是这是旧的语法!当我将项目从Swift 2.x转换为Swift 3时,显然对我来说,Xcode没有转换AppDelegate中的方法.新语法如下所示
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey : Any]? = nil) -> Bool
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6343 次 |
| 最近记录: |