【发布时间】:2017-03-05 02:38:43
【问题描述】:
对不起,我是堆栈溢出的新手,所以我可能以错误的格式发布此内容..
我正在尝试设置我的登录名,因此用户将他们的用户名和密码输入到两个文本字段中。如果他们已经创建了一个帐户,他们会按下“登录”按钮并继续。如果他们创建了一个新帐户,他们会按下“注册”按钮并将他们定向到一个新的视图控制器。在这个控制器中,我想将他们输入的数据放入之前的文本字段中,并在注册页面中填写新的用户名和密码文本字段。
我尝试关注如何执行此操作的 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"
}
}
}
在代码的最后一行,我得到一个“线程 1:EXC_BAD_INSTUCTION(代码:EXC_I386_INVOP,subside 0x0
致命错误:在展开可选值时意外发现 nil
我收到此错误,但我想我已经设置了一个 if else 语句来确定该值是否为 nil?
我输入 0 和 5 只是为了看看代码是否能正常运行并且没有任何错误...
有人帮忙吗?我将不胜感激。谢谢。
【问题讨论】: