在Xcode更新之后,编译器开始在工作代码上抛出错误(两个函数都在AppDelegate.swift中).

func application(application: UIApplication,
    didFinishLaunchingWithOptions launchOptions: NSDictionary?) -> Bool 
{
    FBLoginView.self
    FBProfilePictureView.self
    return true
}

有错误:

/用户//AppDelegate.swift:14:11:Objective-C方法"应用程序:didFinishLaunchingWithOptions:"由方法提供"应用程序(:didFinishLaunchingWithOptions:)' conflicts with optional requirement method 'application(:didFinishLaunchingWithOptions:)"在协议"UIApplicationLegate"中

其次

func application(application: UIApplication,        
                            openURL url: NSURL,
                            sourceApplication: NSString?,
                            annotation: AnyObject) -> Bool {
    var wasHandled:Bool = FBAppCall.handleOpenURL(url, sourceApplication: sourceApplication as! String)
    return wasHandled
}

错误地

/用户//AppDelegate.swift:25:11:Objective-C方法

我明白,我很可能希望你们以某种方式将这两个功能结合在一起.我不明白为什么这个代码在6.3中突然停止工作,尽管它在6.2中工作.

推荐答案

我不确定编译器抛出错误的确切原因,但我确实看到了这些方法的默认Swift版本中的差异.也许您可以用普通Swift项目创建的函数声明替换函数声明:

1

func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool

2

func application(application: UIApplication, openURL url: NSURL, sourceApplication: String?, annotation: AnyObject) -> Bool

我建议用上面的方法声明替换你的方法声明,看看它现在是否可以编译.


EDIT 1 (9/21/2015): I've confirmed these are now up to date for Xcode 7's public release. They removed the optional (100) and made it (101), in declaration #2.

Swift相关问答推荐

字符串目录不适用于SWIFT包

带有文本输入自动大小写修饰符的SwiftUI Textfield问题

修改数组中每个类实例的属性

在 SwiftUI 视图中观察 UIViewRepresentable 的 @State var 变化

如何使用Duration.TimeFormatStyle以h m s格式快速格式化时间

Observable.create 捕获行为

允许为 self 分配新的 struct 值的理由是什么?

如何从我的 macOS 应用程序打开 (.log) 文件?

在 struct 中的序列和非序列泛型函数之间进行 Select

为什么 String.contains 在我导入 Foundation 时表现不同?

RxSwift 中 Single.just(...) 和 Observable.just(...) 之间有区别吗?

如果 Swift 无法分配内存会怎样?

XCUITest 在 TearDown 期间随机失败-无法终止 com.bundle.id

与 SwiftUI 中的 onChange 修饰符相比,objectWillChangeSequence 的目的是什么?

通用枚举菜单 SwiftUI

在运行时访问 UIView 宽度

swift 3 错误:参数标签 '(_:)' 不匹配任何可用的重载

Swift 3:日期与 NSDate?

使用 ARAnchor 插入 node 和直接插入 node 有什么区别?

使用 JSONEncoder 对类型为 Codable 的变量进行编码