【问题标题】:Error: Failed to connect outlet from ... to (NSTextField): missing setter or instance variable错误:无法将出口从...连接到(NSTextField):缺少设置器或实例变量
【发布时间】:2015-06-18 18:24:02
【问题描述】:

为什么会有这段代码:

if Note1Math.stringValue == "" {         
        TxtFilled = 0

        }else{

        TxtFilled = 1

    }

给出这个错误?:

2015-06-18 20:20:17.633 Office[41763:430750] 无法将 (Note1) 出口从 (Office.ViewController) 连接到 (NSTextField):缺少设置器或实例变量。
致命错误:在展开可选值时意外发现 nil (lldb)

【问题讨论】:

  • 可能您没有将变量连接到界面生成器中的文本字段
  • 可以出示Note1Math的声明吗?

标签: xcode swift nstextfield


【解决方案1】:

这部分信息:

2015-06-18 20:20:17.633 Office[41763:430750] 无法将 (Note1) 出口从 (Office.ViewController) 连接到 (NSTextField):缺少设置器或实例变量。

并非来自该代码。它来自加载 NIB 或故事板。据推测,您曾经将一个插座命名为 Note1,将其连接到 NIB 或情节提要中,然后在代码中将其重命名为 Note1Math,而无需修复 NIB/情节提要。

然后,稍后,当您访问 Note1Math 时,它是 nil(因为它没有在 NIB/故事板中连接)。这导致了第二条消息:

致命错误:在展开可选值 (lldb) 时意外发现 nil

解决方案是进入NIB或故事板,断开旧名称的插座,然后重新连接插座。

【讨论】:

    【解决方案2】:

    试试这个...

    如果 Note1Math 是一个文本框...

    if Note1Math.text == "" {
    
            TxtFilled = 0
    
            }
    else{
    
            TxtFilled = 1
    
    
        }
    

    如果 Note1Math 只是一个字符串...

      if Note1Math == "" {
    
                TxtFilled = 0
    
                }
        else{
    
                TxtFilled = 1
    
    
            }
    

    【讨论】:

    • 我试过这个,但我给出:“NSTextField 没有名为文本的成员”
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-09-22
    • 1970-01-01
    • 1970-01-01
    • 2014-02-05
    • 2019-08-11
    • 2020-10-06
    相关资源
    最近更新 更多