【问题标题】:Swift Action Extension NSString error?Swift 动作扩展 NSString 错误?
【发布时间】:2016-02-13 19:36:49
【问题描述】:

我是 Swift 新手!所以我在 Swift 中构建了一个动作扩展并且出现了一个错误

itemProvider.loadItemForTypeIdentifier(kUTTypePropertyList as NSString, options: nil, completionHandler: { [unowned self] (result: NSSecureCoding!, error: NSError!) -> Void in

错误似乎在 NSString。错误显示:

'NSString' 不能简单转换为 'String':你的意思是使用 'as' 来显式转换

我把它的 NSString 改成

kUTTypePropertyList as String

我收到另一个错误提示:

无法将类型 '(NSSecureCoding!, NSError!) -> Void 的值转换为预期的参数类型 'NSItemProviderCompletionHandler?'

如何解决此错误?谢谢!

【问题讨论】:

    标签: ios xcode swift optional


    【解决方案1】:

    根据文档,NSItemProviderCompletionHandler 定义为(NSSecureCoding?, NSError!) -> Void,但您使用了(NSSecureCoding!, NSError!) -> Void

    result 上,只需将您的 ! 更改为 ? 即可。

    【讨论】:

      【解决方案2】:

      如果您使用的是 swift 3 语法。它变为:

      typealias CompletionHandler = (NSSecureCoding?, Error!) -> Void

      NSError -> 错误

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2021-11-20
        • 1970-01-01
        • 1970-01-01
        • 2022-06-22
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多