代码之家  ›  专栏  ›  技术社区  ›  Paul

Swift ui xcode NSPasteboard为空

  •  0
  • Paul  · 技术社区  · 4 年前

    enter image description here

    我在程序的开头有以下代码,当它启动时,我需要看看是否有复制的文本。

    但是,如果我启动程序时没有复制任何文本,我会出现以下错误。

    我该如何解决这个问题?

    Thread 1: Fatal error: Unexpectedly found nil while unwrapping an Optional value
    
    init() {
            let paste = NSPasteboard.general.string(forType: .string)!
    ...
    }
    
    0 回复  |  直到 4 年前
        1
  •  2
  •   workingdog support Ukraine    4 年前

    你可以试试这个:

    init() {
        if let paste = NSPasteboard.general.string(forType: .string) {
            // do something with paste
        } else {
            // do something when paste is nil
        }
        ....
    }
    
        2
  •  1
  •   El Tomato    4 年前
    if let _ = NSPasteboard.general.data(forType: .string) {
        print("You have data")
    } else {
        print("Oops, you don't.")
    }