【问题标题】:terminating with uncaught exception of type NSException in Swift在 Swift 中以 NSException 类型的未捕获异常终止
【发布时间】:2015-06-09 20:06:39
【问题描述】:

我对 swift 很陌生,只是在玩下面的教程来学习核心数据基础知识。

CoreData Tutorial

我尝试使用中断来缩小引发异常的范围。我相信这是当我试图通过视图控制器传递数据时。

    override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) {
    if segue.identifier == "Update" {

       // var selectedItem: NSManagedObject = myList[self.tableView.indexp] as NSManagedObject

        let IVC: CreateRiderViewController = (segue.destinationViewController as? CreateRiderViewController)!

        var indexPath: NSIndexPath = self.tableView.indexPathForSelectedRow()!
        var selectedItem: NSManagedObject = myList[indexPath.row] as! NSManagedObject

        IVC.firstName = (selectedItem.valueForKey("firstName") as?String)!
        IVC.lastName = (selectedItem.valueForKey("lastName") as! String?)!
        IVC.phoneNumber = (selectedItem.valueForKey("phoneNumber") as! String?)!
        IVC.eMail = (selectedItem.valueForKey("eMail") as! String?)!
        IVC.exitingItem = selectedItem


    }
}

我试图传递这些数据的视图控制器也看起来像这样。

class CreateRiderViewController: UIViewController {

@IBOutlet weak var firstNameField: UITextField!
@IBOutlet weak var lastNameField: UITextField!
@IBOutlet weak var phoneNumberField: UITextField!
@IBOutlet weak var eMailField: UITextField!

var exitingItem: NSManagedObject!
var firstName: String = ""
var lastName: String = " "
var phoneNumber: String = " "
var eMail: String = " "



override func viewDidLoad() {
    super.viewDidLoad()

    if (exitingItem != nil) {
        firstNameField.text = firstName
        lastNameField.text = lastName
        phoneNumberField.text = phoneNumber
        eMailField.text = eMail
    }

    // Do any additional setup after loading the view.
}

它应该将文本字段文本设置为从我的第一个视图控制器中选择的行。但是,当我选择一行时,程序似乎在转换视图控制器时崩溃了。

我得到的错误是

2015-06-09 15:53:51.193 ARRR[37189:4601772] -[UITextInputTraits length]: unrecognized selector sent to instance 0x7fc129f60800
2015-06-09 15:53:51.198 ARRR[37189:4601772] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', 
reason: '-[UITextInputTraits length]: unrecognized selector sent to instance 0x7fc129f60800'

我相信我在错误的时间打开了一些东西,但无法弄清楚。

我也在努力更好地共享信息以获取故障排除方面的帮助,并希望获得有关如何更清楚地解释我的问题并知道我是否包含正确的代码/错误消息以找到问题的反馈问题。

【问题讨论】:

    标签: swift segue uncaught-exception


    【解决方案1】:

    检查您的 UITextField 是否已连接到您的 ViewController。 按住 ctrl 键单击情节提要中的所有 UITextField 并检查断开的链接(您可能在代码中创建了一个插座,但更改了它的名称)。还要检查 ViewController 中的所有插座是否已连接(初始化行左侧出现一个圆圈,如果已填充则已连接,如果是空圆圈则链接已断开)

    Screenshot

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-03-25
      • 2018-12-11
      • 1970-01-01
      相关资源
      最近更新 更多