I've been having trouble with XCode terminating when I enter a value for Module name. It only happens half the time, so one minute it's working and value is saved to the array, the next minute the app terminates. Please help.
DetailView ControllerCode:
var courseWork: CourseWork? {
didSet {
dispatch_async(dispatch_get_main_queue()) {
self.configureView()
}
}
}
func configureView() { // Update the user interface for the detail view
if let detail = self.courseWork {
self.title = detail.valueForKey("courseWorkName")!.description
textFields[0].text = detail.valueForKey("moduleName") as? String //Error with this line
textFields[1].text = detail.valueForKey("markAwarded") as? String
func setupUIElements() {
//text fields
for textF in textFields {
textF.delegate = self
}
textView.delegate = self
}
Code2:
func saveTHeCourseWork(fieldName: String, value: AnyObject) {
courseWork?.setValue(value, forKey: fieldName)
do {
try courseWork?.managedObjectContext?.save()
} catch {
let saveError = error as NSError
print(saveError)
}
}
func textField(textField: UITextField, shouldChangeCharactersInRange range: NSRange, replacementString string: String) -> Bool {
if textField == textFields[0] { // module name field
saveTHeCourseWork("moduleName", value: textFields[0].text!)
} else if textField == textFields[1] { // mark awarded
saveTHeCourseWork("markAwarded", value: textFields[1].text!)
}
return true
}
Error:
fatal error: unexpectedly found nil while unwrapping an Optional value