Xcode 8 beta 6 UIActivityItemProvider 错误与@objc 兼容性

Posted

技术标签:

【中文标题】Xcode 8 beta 6 UIActivityItemProvider 错误与@objc 兼容性【英文标题】:Xcode 8 beta 6 UIActivityItemProvider error with @objc compatibility 【发布时间】:2016-08-23 14:20:01 【问题描述】:

尝试在 Xcode 8 beta 6 中实现 UIActivityItemProvider。在将此方法从 String 参数更改为 UIActivityType 后,现在出现此错误:

方法不能是 @objc 覆盖,因为参数 2 的类型不能在 Objective-C 中表示。

这是一个错误吗?有解决办法吗?

这是我们的代码

class NotificationUIActivityItemProvider : UIActivityItemProvider 

let subject : String
let text : String

init(subject: String, text: String) 

    self.subject = subject
    self.text = text
    super.init(placeholderItem: subject)


override public var item: Any  return text 

override func activityViewController(_ activityViewController: UIActivityViewController, subjectForActivityType activityType: UIActivityType?) -> String 
    if activityType == .mail 
        return subject
     else 
        return ""
    

【问题讨论】:

在我们解决了更多 Xcode 8 beta 6 错误后,现在可以正常工作了。 【参考方案1】:

在我们解决了更多 Xcode 8 beta 6 错误后,现在可以正常工作了。

【讨论】:

以上是关于Xcode 8 beta 6 UIActivityItemProvider 错误与@objc 兼容性的主要内容,如果未能解决你的问题,请参考以下文章