所以我正在尝试为我正在上课的课程编写一个“Mad Lib”主题应用程序,但我一直得到一个
EXC_BAD_INSTRUCTION
当我点击提交按钮时出错。班上的其他同学也想不通。请帮我!
这是我的 firstViewController.swift:
import UIKit
class ViewController: UIViewController
{
@IBOutlet weak var firstTextField: UITextField! //adjective
@IBOutlet weak var secondTextField: UITextField! //male name
@IBOutlet weak var thirdTextField: UITextField! //verb
@IBOutlet weak var fourthTextField: UITextField! //female name
@IBOutlet weak var fifthTextField: UITextField! //adjective
@IBOutlet weak var sixthTextField: UITextField! //athlete
@IBOutlet weak var seventhTextField: UITextField! //food
@IBOutlet weak var eighthTextField: UITextField! //restaurant name
var userInfo = myCustomClass()
override func viewDidLoad()
{
super.viewDidLoad()
}
override func prepare(for segue: UIStoryboardSegue, sender: Any?)
{
userInfo.adjectiveOne = firstTextField.text!
userInfo.maleName = secondTextField.text!
userInfo.verb = thirdTextField.text!
userInfo.femaleName = fourthTextField.text!
userInfo.adjectiveTwo = fifthTextField.text!
userInfo.athlete = sixthTextField.text!
userInfo.food = seventhTextField.text!
userInfo.restaurantName = eighthTextField.text!
let nextView = segue.destination as! secondViewController
nextView.passedObject = userInfo
}
}
这是我的 secondViewController.swift:
import UIKit
class secondViewController: UIViewController
{
var passedObject = myCustomClass()
@IBOutlet weak var myFinishedProduct: UILabel!
override func viewDidLoad()
{
super.viewDidLoad()
myFinishedProduct.text = "There was once a \(passedObject.adjectiveOne) man /n \(passedObject.maleName). One day while he was \(passedObject.verb) he saw /n \(passedObject.femaleName), a rather \(passedObject.adjectiveTwo) woman. /n She was also a \(passedObject.athlete), and a very good /n one too. The two went to lunch together at \(passedObject.restaurantName) /n and ate some \(passedObject.food). After /n that they never crossed paths again."
}
}
最后是我的 NSOBject,名为“myCustomClass.swift”:
import UIKit
class myCustomClass: NSObject
{
var adjectiveOne = ""
var maleName = ""
var verb = ""
var femaleName = ""
var adjectiveTwo = ""
var athlete = ""
var food = ""
var restaurantName = ""
}
基本上,当按下提交按钮时,`无论用户在八个文本字段中输入什么,都将存储在 myCustomClass 中。从那里开始,在 secondViewController 中,它将把八个输入放入故事中并将其显示在标签上。
任何帮助表示赞赏,谢谢!
编辑:“提交按钮”连接到我的故事书中的 secondViewController,目的是“展示”。