【问题标题】:Swift 4: @IBOutlet UITextView crashSwift 4:@IBOutlet UITextView 崩溃
【发布时间】:2018-01-31 14:42:47
【问题描述】:

我使用嵌入在视图控制器中的表格视图。我在表格视图中存储了一些项目,如UITextFieldUISlider 等。当我在课堂上连接这些项目时,应用程序在UITextView 插座上崩溃。

@IBOutlet weak var nameProfileTextField: UITextField!
@IBOutlet weak var ageSlider: UISlider!
@IBOutlet weak var descriptionProfileTextView: UITextView! //Crash here!

错误消息对我没有帮助。控制台仅显示以下消息,没有更多详细信息。

以 NSException 类型的未捕获异常终止

@IBOutlet 连接似乎没问题,如下图所示。

【问题讨论】:

  • 您是否尝试过清理构建文件夹?并重新启动 Xcode :)
  • 尝试删除连接(插座)并重新连接
  • 控制台应该说更多,确定它没有说“在展开可选时发现意外的 nil”?
  • 感谢您的回答。我已经尝试重新启动Xcode,清除项目,再次连接uitextView并删除UITextView并再次连接。没有成功。
  • @MaximZakopaylov,你是对的。 UITableViewCell 上未连接插座。它们通过 UITableViewController 连接。

标签: ios swift uitextview iboutlet nsexception


【解决方案1】:

删除连接并重新连接。检查文件和情节提要中的类名是否相同。

【讨论】:

  • 感谢您的回答,Artyon。我已经尝试删除并重新创建连接但没有工作。后面我会再检查一下类名,但是其他的IBOutlets在同一个表中,不会触发错误。
  • 嗯,奇怪,需要更多信息或截图。 @恩佐
【解决方案2】:

您的 IBOutlet 链接界面构建器相关的 UIViewController 似乎没问题。

可能是 UIViewController 上的 IBOutlet 有超过 1 个与之关联的指针。

如果你在相关的 UIViewController 中右击 IBOutlet 左侧的灰点,是否只有 1 个引用?

例如

如果这不起作用,我建议在界面生成器中删除 UIViewController 并重新开始。

【讨论】:

  • 工作。我删除了视图控制器和表视图控制器。之后我再次创建了所有项目:View Controller、Table View Controller、UITextView、UITextField 等等,我确实重新连接了 UITextView 和 UITableViewController 类上的其他元素。谢谢@kd02 并感谢所有回答的人。
猜你喜欢
  • 2016-07-01
  • 2019-02-28
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-10-17
  • 2018-05-04
相关资源
最近更新 更多