objective-c - 用 Swift 编写的委托(delegate)与 Objective-C 期望的选择器不匹配

标签 objective-c swift

我正在尝试对 Flickr API (ObjectiveFlickr) 使用 Objective C 包装器。包装器使用 Objective-C 代码示例。我正在尝试将它与 Swift 一起使用,一旦包装器试图找到第一个委托(delegate)方法,它就会在此断言上失败。

NSAssert([delegate respondsToSelector:@selector(flickrAPIRequest:didObtainOAuthRequestToken:secret:)],
    @"Delegate must implement the method -flickrAPIRequest:didObtainOAuthRequestToken:secret: to handle OAuth request token callback");            
[delegate flickrAPIRequest:self didObtainOAuthRequestToken:oat secret:oats];

这是委托(delegate)方法签名。

class FlickrDelegate : NSObject, OFFlickrAPIRequestDelegate
{

    func flickrAPIRequest(inRequest:OFFlickrAPIRequest,
                          didObtainOAuthRequestToken inToken:String,
                          secret inSecret:String) {
    ...
    }
}

对于我正在尝试做的事情,我是一个完全的新手,所以也许我犯了一些非常愚蠢的错误。

最佳答案

您是否在 viewdidload 中的 flickrAPIRequest 类上设置了委托(delegate)属性以接收来自 Flikr 的消息?

关于objective-c - 用 Swift 编写的委托(delegate)与 Objective-C 期望的选择器不匹配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26663994/

相关文章:

ios - Objective - C 获取 CFBundleShortVersionString 的空白值 - 应用程序版本

ios - 无法在 Xcode 5.0 中使用 OCMock 2.1+ stub 类方法

iphone - iOS - 为什么我的 NSURL 没有保留在 init 方法中?

ios - 选择 UITableView 上的所有单元格

ios - 点击由 UIScrollView 覆盖的 UITableViewCell 中的 UIButton 不会触发按钮的目标

swift 3 : How to Calculate Random Number with Favor Towards A Bias

iphone - 如何禁用横向?

ios - 使用 sdk paypal 在 swift 3 中键入 NSDecimalNumber

ios - Swift 2 FirebaseTableView

ios - Swift - 在 SharkORM 中级联删除