【问题标题】:Is this code converting the KUTTypeFileURL as a String, then converting it to a NSPasteboard.PasteboardType?此代码是否将 KUTTypeFileURL 转换为字符串,然后将其转换为 NSPasteboard.PasteboardType?
【发布时间】:2019-09-12 06:04:51
【问题描述】:

通过教程并尝试理解此方法调用的第一个参数的 Swift 语法。嵌套在 for/in 循环中的保护语句。该行正在拉出包含正在拖动的粘贴板项目的 URL 的字符串。

此代码是否将 KUTTypeFileURL 转换为字符串,然后将其转换为 NSPasteboard.PasteboardType?这里还可能发生什么。

guard let stringyURL = item.string(forType: NSPasteboard.PasteboardType(kUTTypeFileURL as String)) else { continue }

【问题讨论】:

    标签: swift type-conversion


    【解决方案1】:
    • kUTTypeFileURL 是 CFSting。
    • kUTTypeFileURL as String 将其桥接到 String
    • NSPasteboard.PasteboardType(kUTTypeFileURL as String))NSPasteboard.PasteboardType
    • item.string(forType: NSPasteboard.PasteboardType(kUTTypeFileURL as String))NSPasteboard 询问与提供的类型匹配的所有项目的字符串表示形式(作为String?),即所有URLs。
    • 然后,guard 语句解包生成的String?,将其绑定到stringyURL

    换句话说,简单地说item.string(forType: .URL)`

    【讨论】:

      猜你喜欢
      • 2019-10-10
      • 2023-02-01
      • 2016-12-11
      • 2019-10-16
      • 1970-01-01
      • 1970-01-01
      • 2015-04-27
      • 2018-11-13
      相关资源
      最近更新 更多