【问题标题】:expression was too complex to be solved issue in Xcode 9?表达式太复杂而无法在 Xcode 9 中解决?
【发布时间】:2017-10-24 06:10:38
【问题描述】:

我使用下面的代码来显示 icloud 选择器。我的代码在 Xcode 8 中运行良好,但是当我更新到 Xcode 9 时,它显示错误。如何摆脱这个问题?

let documentPickerController = UIDocumentPickerViewController(documentTypes: [String(kUTTypeText), String(kUTTypePDF), String(kUTTypePNG), String(kUTTypeJPEG), String(kUTTypePlainText), String(kUTTypeImage),"public.data"], in: .import)

当仅使用数组中的一项作为public.data 时,它可以工作。

【问题讨论】:

  • 将表达式分解为不同的子表达式,使用documentTypes 值作为单独的数组。
  • 感谢您的回答,但即使我使用了单独的数组,它对我也不起作用
  • 让它像let documents : [String] = [String("kUTTypeText"), String("kUTTypePDF"), String("kUTTypePNG"), String("kUTTypeJPEG"), String("kUTTypePlainText"), String("kUTTypeImage"),"public.data"]

标签: ios swift xcode xcode9


【解决方案1】:

拆分它。

试试这个。

let t1 = String(kUTTypeText)
let t2 = String(kUTTypePDF)
let t3 = String(kUTTypePNG)
let t4 = String(kUTTypeJPEG)
let t5 = String(kUTTypePlainText)
let t6 = String(kUTTypeImage)
let t7 = "public.data"

let types = [t1, t2, t3, t4, t5, t6, t7]
let documentPickerController = UIDocumentPickerViewController(documentTypes: types, in: .import)

【讨论】:

    【解决方案2】:

    拆分成多行:

    let documentTypes: [String] = [String(kUTTypeText), String(kUTTypePDF), String(kUTTypePNG), String(kUTTypeJPEG), String(kUTTypePlainText), String(kUTTypeImage),"public.data"]
    
    let documentPickerController = UIDocumentPickerViewController(documentTypes: documentTypes, in: .import)
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-02-21
      • 1970-01-01
      • 2018-03-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多