【问题标题】:Why is my segue causing an "unrecognized selector sent to instance" NSInvalidArgumentException?为什么我的 segue 会导致“无法识别的选择器发送到实例”NSInvalidArgumentException?
【发布时间】:2018-09-05 06:01:25
【问题描述】:

尝试使用 segue 从我的第一个 ViewController 移动到我的第二个 ViewController(都使用相同的情节提要)。我的第一个 ViewController 有两个按钮,一个是“男性”,一个是“女性”(我知道,不是每个人都与这两个按钮相关联),我希望任何一个在单击后移动到第二个 ViewController。我将按钮拖放到我的代码中以获得以下内容:

@IBAction func femaleButton(_ sender: AnyObject)
{
    Globals.onboardingList.append("girl")
    print("it's a girl!")
    performSegue(withIdentifier: "femaleSegue", sender: self)
}

男性按钮是相同的。使用 printlines 我知道该程序在“performSegue”行之前一直有效。我添加了视觉序列并将它们的标识符设置为maleSegue 和femaleSegue。但是,我收到以下错误:

Terminating app due to uncaught exception 'NSInvalidArgumentException', 
reason: '-[Train.SecondVC 
_setViewDelegateContentOverlayInsetsAreClean:]: unrecognized selector 
sent to instance 0x7fc482d02b00'

非常感谢您的帮助!

【问题讨论】:

  • 看起来应用程序在第二个 vc 中崩溃了。你能在第二个vc中添加代码吗?
  • override func viewDidLoad() { print("got to second page") super.viewDidLoad() // 加载视图后做任何额外的设置。 } override func didReceiveMemoryWarning() { super.didReceiveMemoryWarning() // 处理所有可以重新创建的资源。 }
  • 只有原始的东西......在 viewDidLoad() 中有一个打印行,永远不会出现
  • 检查第二个视图控制器的接口生成器中分配的类
  • 感谢您的帮助,已修复!

标签: ios swift segue uistoryboard unrecognized-selector


【解决方案1】:

我无法确定真正的问题,因为我相信您没有使用正确的标识符或从错误的视图控制器的情节提要连接,但是为了确保,请进行一个 segue ctr + 单击按钮并将其拖到第二个屏幕并评论您的操作,如果可行,则删除该转场和前两个转场并再次执行此操作,但这次要集中精力:)

【讨论】:

  • 你是什么意思,“并评论你的行为?”我尝试删除 segue,但它仍然导致相同的错误......做事的确切顺序是什么?从按钮控制点击->查看控制器2,然后在我的代码中,拖动按钮按下然后添加代码“执行segue”?
  • 评论你的动作,我的意思是按钮动作实现,执行segue,只需评论那行和ctr +单击并从按钮拖动到第二个屏幕并选择segue,这将自动执行点击后继续
  • 是的,我不太确定如何,但这解决了它。谢谢!您不必在代码本身中使用 performSegue() 吗?
  • 不,如果你有一些条件会调用不同的 segue,你必须使用 performSegue(),所以你需要做你所做的,但这次,我不知道你做错了什么但是您可以观看有关它或其他内容的视频,如果您发现答案有帮助,请投票^_^
  • 我确实投了票,但它没有显示出来,因为我的帐户不够老!
【解决方案2】:

在我的例子中,我收到了这个错误,因为我创建了一个自定义 ViewController 类并错误地将它分配给 Storyboard 中的 View 而不是 ViewController。检查您的 Storyboard View 和 ViewControllers 是否有自定义类,并确保您已正确设置它们。

【讨论】:

    猜你喜欢
    • 2013-12-26
    • 2012-07-16
    • 2018-01-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-08-05
    • 2012-02-21
    相关资源
    最近更新 更多