dimanche 1 mars 2015

fatal error: unexpectedly found nil while unwrapping an Optional value, didn't find solution yet

I looked for a solution of my problem on the internet, but I couldn't find one.


My problem:


I always get the error: "fatal error: unexpectedly found nil while unwrapping an Optional value" when I press the button "agsButton"


Here is my code:



import UIKit

class AgsViewController: UIViewController, UIPickerViewDataSource, UIPickerViewDelegate {

@IBOutlet weak var agsPicker: UIPickerView!

@IBOutlet weak var agsButton: UIButton!

@IBOutlet weak var agsText: UITextView!

let agsData = ["Roboter AG","Strategie AG","Gestaltung von Apps","Chemie AG","Einführung in ein Instrument","Schulband","BigBand","Unterstufenchor","Oberstufenchor/Vokalkreis","Schulorchester","Spielraum unlimited","Spielraum GmbH","Turnen","DFB Fußballschule","Golf AG","Tanz AG","Bücherei AG","Junge Kirche","Mediation","Schülergenossenschaft","10-Finger-Tastschreiben","Schulsanitätsdienst","DELF (Französisch","Servir"]

@IBAction func agsButtonPressed(){

agsPicker.hidden = true

var buttonTitle = "Mehr Infos über: Roboter AG" //agsButton.currentTitle as String!

switch buttonTitle{

case "Mehr Infos über: Roboter AG":
agsText.text = "Roboter AG"
case "Mehr Infos über: Strategie AG":
agsText.text = "Strategie AG"
case "Mehr Infos über: Gestaltung von Apps":
agsText.text = "Gestaltung von Apps"
case "Mehr Infos über: Chemie AG":
agsText.text = "Chemie AG"
case "Mehr Infos über: Einführung in ein Instrument":
agsText.text = "Einführung in ein Instrument"
case "Mehr Infos über: Schulband":
agsText.text = "Schulband"
case "Mehr Infos über: BigBand":
agsText.text = "BigBand"
case "Mehr Infos über: Unterstufenchor":
agsText.text = "UnterStufenchor"
case "Mehr Infos über: Oberstufenchor/Vokalkreis":
agsText.text = "Oberstufenchor/Vokalkreis"
case "Mehr Infos über: Schulorchester":
agsText.text = "Schulorchester"
case "Mehr Infos über: Spielraum unlimited":
agsText.text = "Spielraum unlimited"
case "Mehr Infos über: Spielraum GmbH":
agsText.text = "Spielraum GmbH"
case "Mehr Infos über: Turnen":
agsText.text = "Turnen"
case "Mehr Infos über: DFB Fußballschule":
agsText.text = "DFB Fußballschule"
case "Mehr Infos über: Golf AG":
agsText.text = "Golf AG"
case "Mehr Infos über: Tanz AG":
agsText.text = "Tanz AG"
case "Mehr Infos über: Bücherei AG":
agsText.text = "Bücherei AG"
case "Mehr Infos über: Junge Kirche":
agsText.text = "Junge Kirche"
case "Mehr Infos über: Mediation":
agsText.text = "Mediation"
case "Mehr Infos über: Schülergenossenschaft":
agsText.text = "Schülergenossenschaft"
case "Mehr Infos über: 10-Finger-Tastschreiben":
agsText.text = "10-Finger-Tastschreiben!"
case "Mehr Infos über: Schulsanitätsdienst":
agsText.text = "Schulsanitätsdienst"
case "Mehr Infos über: DELF (Französisch)":
agsText.text = "Delf (Französisch)"
case "Mehr Infos über: Servir":
agsText.text = "Servir"
default:
break

}

//performSegueWithIdentifier("nextView", sender: self)

}








override func viewDidLoad() {
super.viewDidLoad()
if(agsPicker.hidden == false){
agsPicker.dataSource = self
agsPicker.delegate = self
}

// Do any additional setup after loading the view.
}

override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
func numberOfComponentsInPickerView(pickerView: UIPickerView) -> Int {
return 1
}
func pickerView(pickerView: UIPickerView, numberOfRowsInComponent component: Int) -> Int {
return agsData.count
}

func pickerView(pickerView: UIPickerView, titleForRow row: Int, forComponent component: Int) -> String! {
return agsData[row]
}

func pickerView(pickerView: UIPickerView, didSelectRow row: Int, inComponent component: Int) {
agsButton.setTitle("Mehr Infos über: " + agsData[row], forState: UIControlState.Normal)
}


/*
// MARK: - Navigation

// In a storyboard-based application, you will often want to do a little preparation before navigation
override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) {
// Get the new view controller using segue.destinationViewController.
// Pass the selected object to the new view controller.
}
*/

}


The agsText is located on a different View than the other two outlets.


If you need more Information please let me know!


Thank you


PS: don't be confused ;) some of the code is German ;)




Aucun commentaire:

Enregistrer un commentaire