gpt4 book ai didi

swift - “线程 1 : EXC_BAD_INSTRUCTION (code=EXC_I386_INVOP, 消退 = 0x0)

转载 作者:行者123 更新时间:2023-11-30 12:38:13 25 4
gpt4 key购买 nike

抱歉,我是堆栈溢出新手,所以我可能会以错误的格式发布此内容..

我正在尝试设置登录名,因此用户在两个文本字段中输入用户名和密码。如果他们已经创建了帐户,则按“登录”按钮并继续。如果他们创建一个新帐户,他们按下“注册”按钮,它会将他们定向到一个新的 View Controller 。在此 Controller 中,我想获取他们在之前的文本字段中输入的数据,并在注册页面中填写新的用户名和密码文本字段。

我尝试按照 YouTube 视频了解如何执行此操作,但我不断收到此愚蠢的错误,而且我不知道如何解决它。

//
// ViewController.swift
// Silver
//
// Created by Lakeside Software on 3/3/17.
// Copyright © 2017 KenSchumacher. All rights reserved.
//

import UIKit
import Firebase

class ViewController: UIViewController {

@IBOutlet weak var returningEmail: UITextField!


@IBOutlet weak var returningPassword: UITextField!

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.
}

@IBAction func LoginFunction(_ sender: Any) {

func login() {

FIRAuth.auth()?.signIn(withEmail: returningEmail.text!, password: returningPassword.text!, completion: {
user, error in

if error != nil{
//Password is not right
print("Password is incorrect")
}
else {
//password is correct
print("Welcome in")
}
})
}
}
@IBOutlet weak var UsernameForRegistrationText: UITextField!


override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
var DestViewController = segue.destination as! viewTwo


if UsernameForRegistrationText == nil
{
DestViewController.viewTwo.text = "0"
}
else {
//DestViewController.testLabel.text = UsernameForRegistrationText.text!
DestViewController.viewTwo.text = "5"
}
}

}

在代码的最后一行,我得到一个“Thread 1: EXC_BAD_INSTUCTION (code:EXC_I386_INVOP, subside 0x0)

fatal error :在解包可选值时意外发现 nil

我收到此错误,但我想我已经设置了一个 if else 语句来决定该值是否为零?

我输入 0 和 5 只是为了看看代码是否能正常运行并且没有任何错误......

有人帮忙吗?我将不胜感激。谢谢。

最佳答案

您需要测试一下UsernameForRegistrationText是否为nil。

但是您测试UsernameForRegistrationText.text是否为nil。因此,如果它为零,当您说 UsernameForRegistrationText.text!

时就会崩溃

请记住,在 Swift 中,每当您在引用后添加感叹号 (!) 时,您都会要求崩溃。

关于swift - “线程 1 : EXC_BAD_INSTRUCTION (code=EXC_I386_INVOP, 消退 = 0x0),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42603841/

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