Swift:为什么在比较两个字符串时我不能执行下面的if语句

Swift:为什么在比较两个字符串时我不能执行下面的if语句,swift,xcode,macos,if-statement,Swift,Xcode,Macos,If Statement,所以我正在开发这个应用程序,其中有一个文本字段,当你在上面写东西时,它会被带到下一个SecondviewController。但是,如果文本字段上没有写入任何内容,并且您按下“完成”按钮,则会显示一个错误 为此,我为NSTextField制作了一个IBOutlet,如下所示: @IBOutlet var weblinklabel: NSTextField! 然后,此“完成”按钮包含具有以下if语句的IBFunction: @IBAction func actionWeblinklabel(_

所以我正在开发这个应用程序,其中有一个文本字段,当你在上面写东西时,它会被带到下一个SecondviewController。但是,如果文本字段上没有写入任何内容,并且您按下“完成”按钮,则会显示一个错误

为此,我为NSTextField制作了一个IBOutlet,如下所示:

@IBOutlet var weblinklabel: NSTextField!
然后,此“完成”按钮包含具有以下if语句的IBFunction:

@IBAction func actionWeblinklabel(_ sender: Any) {

    if weblinklabel != "" {
    self.view.window?.close()
    } else {
    label1.isHidden = false
    }
无论在
webllinklabel
中写入什么,都应与空字符串进行比较, 如果
weblinklabel
中有内容,那么它应该关闭当前的viewController,否则它应该给我一个标签(label1)

当我执行此操作时,会出现以下错误:

Binary operator '!=' cannot be applied to operands of type 'NSTextField!' and 'String'
我的代码有什么问题。
提前感谢!:)

这里的问题是,您正在将
NSTextField
本身与字符串
进行比较


要访问
NSTextField
中的文本,您必须执行
weblinklabel.stringValue

非常感谢!错过了这么简单的事情!