gpt4 book ai didi

ios - 设置 delegate = self 导致线程 1 : exc_bad_instruction (code=exc_i386_invop subcode=0x0)

转载 作者:行者123 更新时间:2023-11-28 12:52:18 24 4
gpt4 key购买 nike

我一直在按照 Apple 教程开始使用 Swift:https://developer.apple.com/library/ios/referencelibrary/GettingStarted/DevelopiOSAppsSwift/Lesson3.html#//apple_ref/doc/uid/TP40015214-CH22-SW1

我正在做几乎相同的事情,但出于某种原因 articleLink.delegate = self 给了我

线程 1:exc_bad_instruction (code=exc_i386_invop subcode=0x0)

fatal error :在展开可选值时意外发现 nil

我真的很困惑为什么会发生这种情况,因为这部分我确实是在逐步按照 Apple 教程进行操作...

import UIKit
import Alamofire

class ViewController: UIViewController, UITextFieldDelegate {
// MARK: Properties
@IBOutlet weak var articleLink: UITextField!

override func viewDidLoad() {
super.viewDidLoad()

// Handle the text field's user input through delegate callbacks
articleLink.delegate = self // ERROR OCCURS HERE
}

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

// MARK: UITextFieldDelegate
func textFieldShouldReturn(textField: UITextField) -> Bool {
// Hide keyboard
textField.resignFirstResponder()
return true
}

// MARK: Actions

@IBAction func submitLink(sender: AnyObject) {
}
}

最佳答案

articleLink 是一个隐式展开的可选 UITextField,您指示编译器它永远不会为 nil。 articleLink.delegate = 尝试访问该属性以设置其委托(delegate)并遇到 nil 可选,这是您 promise 永远不会发生的事情。

因为这个属性是一个 IBOutlet 我听起来你在配置 nib 文件时未能将 View 连接到这个 socket 。如果您这样做了,那么该属性将在调用 viewDidLoad 之前设置。

关于ios - 设置 delegate = self 导致线程 1 : exc_bad_instruction (code=exc_i386_invop subcode=0x0),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36122364/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com