Swift 4:@IBOutlet UITextView 崩溃
Posted
技术标签:
【中文标题】Swift 4:@IBOutlet UITextView 崩溃【英文标题】:Swift 4: @IBOutlet UITextView crash 【发布时间】:2018-01-31 14:42:47 【问题描述】:我使用嵌入在视图控制器中的表格视图。我在表格视图中存储了一些项目,如UITextField
、UISlider
等。当我在课堂上连接这些项目时,应用程序在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 连接。 【参考方案1】:删除连接并重新连接。检查文件和情节提要中的类名是否相同。
【讨论】:
感谢您的回答,Artyon。我已经尝试删除并重新创建连接但没有工作。后面我会再检查一下类名,但是其他的IBOutlets在同一个表中,不会触发错误。 嗯,奇怪,需要更多信息或截图。 @恩佐【参考方案2】:您的 IBOutlet 链接从界面构建器到相关的 UIViewController 似乎没问题。
可能是 UIViewController 上的 IBOutlet 有超过 1 个与之关联的指针。
如果你在相关的 UIViewController 中右击 IBOutlet 左侧的灰点,是否只有 1 个引用?
例如
如果这不起作用,我建议在界面生成器中删除 UIViewController 并重新开始。
【讨论】:
工作。我删除了视图控制器和表视图控制器。之后我再次创建了所有项目:View Controller、Table View Controller、UITextView、UITextField 等等,我确实重新连接了 UITextView 和 UITableViewController 类上的其他元素。谢谢@kd02 并感谢所有回答的人。以上是关于Swift 4:@IBOutlet UITextView 崩溃的主要内容,如果未能解决你的问题,请参考以下文章
无法在 Swift 2 中将 TableView @IBOutlet 连接到 ViewController