iOS应用程序xcode构建错误

9
我是iOS开发的新手,遇到了几个构建错误。我在网上查找如何修复这些错误,但没有得到任何提示。使用内置的Swift的Xcode 9.4。
1. 'LaunchOptionsKey'不是'UIApplication'的成员类型。 2. 实例成员'state'不能用于类型'UIControl'。 3. 实例成员'state'不能用于类型'UIControl'。 4. 类型'UIControl'没有成员'State'。
以下是链接,因为我无法在此帖子中包含截图。
Xcode构建错误
3个回答

29

应该是这样的:

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

谢谢,我已经用你的建议替换了代码,它起作用了,但需要我添加一个布尔返回值..谢谢。我仍在努力修复其他错误。我会尝试在这里粘贴代码。 - Omanex Jeep Adventures
你可以阅读苹果关于这些方法要求的文档。https://developer.apple.com/documentation/uikit/uiapplicationdelegate#//apple_ref/occ/intfm/UIApplicationDelegate/application:didFinishLaunchingWithOptions: - U. Benlice
谢谢Benlice,我确实认为我需要花更多的时间阅读和理解文档,有些代码对我来说看起来像奇怪的符号 :-) 希望只是时间和努力的问题..感谢您的建议。 - Omanex Jeep Adventures
同样的问题在这里。我使用你展示的方法解决了问题。但是我发现很难将其与 UIApplication.LaunchOptionsKey 确实是一个结构体这一事实协调起来。这是如何工作的?链接:https://developer.apple.com/documentation/uikit/uiapplication/launchoptionskey - user3207158
但是在苹果的文档中,它展示了与提问者相同的格式,即UIApplication.LaunchOptionsKey。我们应该如何知道哪一个是正确的呢? - instanceof

5

原问题和已接受的答案都没有提到出现错误的代码是在创建项目时生成的代码,因此通常不需要更改。

问题是由于Xcode版本的问题造成的。在较新的Xcode版本(10.2)中,UIApplicationLaunchOptionsKey已被重命名为UIApplication.LaunchOptionsKey。当我尝试在旧版Xcode中打开我的项目时,我遇到了这个问题。这很糟糕,因为我现在无法在无法升级到最新版本的旧计算机上工作。


2
我正在运行Xcode 9.3和Android Studio 3.5.1。我所做的就是删除定义中的“.”:
UIApplication.LaunchOptionsKey: Any
变成了:
UIApplicationLaunchOptionsKey: Any
没有句号。非常好用!享受吧。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接