fatal error: unexpectedly found nil while unwrapping an Optional value - why?

I'm pretty new to coding in Swift and I'm not too sure what's happening here - can anyone help?

Thanks

import UIKit

class SecondViewController: UIViewController {

    var toDoItems:[String] = []


    @IBOutlet weak var toDoItem: UITextField!

    @IBAction func addItem(sender: AnyObject) {

        toDoItems.append(toDoItem.text)
fatal error: unexpectedly found nil while unwrapping an Optional value
(lldb) 

        println(toDoItems)



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


}


ANSWERS:


Most likely, your IBOutlet, toDoItem, was not bound successfully to a UITextField in Interface Builder. Check the outlets for your text field in Interface Builder and make sure it's hooked up successfully.

enter image description here

If the outlet is hooked up properly, another candidate source of this problem is the instantiation of the view controller itself. If you instantiated it programmatically (e.g. SecondViewController() instead of storyboard.instantiateViewControllerWithIdentifier(...)), that would also result in this error.



 MORE:


 ? fatal error: unexpectedly found nil while unwrapping an Optional value - why?
 ? fatal error: unexpectedly found nil while unwrapping an Optional value - why?
 ? fatal error: unexpectedly found nil while unwrapping an Optional value (lldb) on uitextfield
 ? error while assigning string to uilabel swift
 ? Swift TextField Issue
 ? Deinit method is never called - Swift playground
 ? Deinit method is never called - Swift playground
 ? Deinit method is never called - Swift playground
 ? Deinit method is never called - Swift playground
 ? Memory leaks in the swift playground / deinit{} not called consistently