【问题标题】:iOS Simulator Crashing without an error or debugger output?iOS模拟器崩溃没有错误或调试器输出?
【发布时间】:2015-05-09 18:16:32
【问题描述】:

我的 iOS 模拟器崩溃了,没有给我任何输出或错误让我尝试修复。应用程序打开的那一刻,屏幕变黑 3 秒钟,然后崩溃并返回模拟器上的主屏幕。我已经添加了一个异常断点,它在我的代码中的任何时候都没有中断。我不知道问题是什么。这是我的代码:

ViewController.swift

class ViewController: UIViewController {

override func viewDidLoad() {
    super.viewDidLoad()
    // Do any additional setup after loading the view, typically from a nib.
}

override func didReceiveMemoryWarning() {
    super.didReceiveMemoryWarning()
    // Dispose of any resources that can be recreated.
}

@IBOutlet weak var strWordValue: UILabel!
@IBOutlet weak var strInputField: UITextField!


func textFieldShouldReturn(textField: UITextField) -> Bool{
    textField.resignFirstResponder()
    performAction()
    return true;
}

@IBAction func performAction(){

        strWordValue.text = strInputField.text.wordValue.description

}

main.swift

extension String {
    var letterValue: Int {
        if let found = find(Array("abcdefghijklmnopqrstuvwxyz"),Character(lowercaseString)) {
            return found + 1
        }
        return 0
    }
    var wordValue: Int {
        var result = 0
        for letter in self {
            result += String(letter).letterValue
        }
        return result
    }
}

我的代码中可能存在我正在“略读”的错误,或者 Xcode 中的错误。我都不确定。

任何关于如何修复此错误的想法都会很棒。

提前致谢。

【问题讨论】:

  • 1.添加一些断点以找出崩溃的位置。 2.查看控制台(Utilities/Concole.app)输出。 3. 检查 IBOutlet 变量是否连接正确。
  • 我应该从哪里开始添加它们
  • 到处添加它们。 ;-) 在每个方法的顶部。看看应用程序在崩溃前能走多远。
  • 你为什么要扩展 String 而不仅仅是添加一个方法?因为extension 是新的闪亮?
  • 你能贴出如何做的代码

标签: ios xcode debugging swift ios-simulator


【解决方案1】:

不确定问题是否与此有关。检查 UILabel 和 UITextField 的 IBOutlet 连接。你的类在你的 viewDidLoad 方法中没有 UITextFieldDelegate 协议和 strInputField.delegate = self

【讨论】:

  • UITextFieldDelegate 的所有方法都是可选的。第一条评论指出:“检查 IBOutlet 变量是否连接正确。”
  • 对不起,我错过了第一条评论。 UITextFieldDelegate 方法是可选的,但代码中的 textFieldShouldReturn 函数将永远不会在没有 UITextFieldDelegate 的情况下被调用,因此共享该信息。
  • 代理可以在.xib中设置。
  • 还是不行?我到处都放了断点,但它什么也没做。它仍然在崩溃。
  • 没关系,它工作得很好。我有 2 个IBOutlet 连接。
猜你喜欢
  • 1970-01-01
  • 2019-11-15
  • 1970-01-01
  • 2017-07-11
  • 1970-01-01
  • 1970-01-01
  • 2012-06-28
  • 2022-10-21
  • 2020-11-15
相关资源
最近更新 更多