8676


`PickerView`の最初に選択されている値を取得してデータベースに格納しようとしているのですが、データ登録後にデータベースを確認すると中身が空になってしまっています。  
また、この`ViewController`から他の`ViewController`へ移動しようとすると、「`fatal error:
unexpectedly found nil while unwrapping an Optional
value`」というエラーがログに出力されてアプリが落ちてしまいます。  
いまいちまだオプショナル型についても分かってないので、詰まってしまいました。  
どうすれば`PickerView`の初期値を取得して正常に動かすことができるでしょうか？  
どなたか分かる方がいれば教えていただきたいです。すみませんが、よろしくお願いします。

[code]

    import UIKit
    
    class ViewController: UIViewController {
    
        @IBOutlet weak var speechPicker: UIPickerView!
        @IBOutlet weak var textField: UITextField!
    
        var dataForSpeechPicker = ["A", "B", "C"]
        var registerWordStore = ""
        var registerSpeechStore = ""
    
        override func viewDidLoad() {
            super.viewDidLoad()
            // Do any additional setup after loading the view, typically from a nib.
        }
    
        override func viewDidAppear(animated: Bool) {
            speechPicker.selectRow(0, inComponent: 0, animated: true)
        }
    
        override func didReceiveMemoryWarning() {
            super.didReceiveMemoryWarning()
            // Dispose of any resources that can be recreated.
        }
    
        // MARK:- picker
    
        func numberOfComponentsInPickerView(pickerview1: UIPickerView) -> Int {
            return 1
        }
    
        func pickerView(pickerview1: UIPickerView, numberOfRowsInComponent component: Int) -> Int {
            return dataForSpeechPicker.count
        }
    
        func pickerView(pickerView: UIPickerView, titleForRow row: Int, forComponent component: Int) -> String! {
            return dataForSpeechPicker[row]
        }
    
        func pickerView(pickerview1: UIPickerView, didSelectRow row: Int, inComponent component: Int) {
            registerSpeechStore = dataForSpeechPicker[row]
        }
    
        // MARK:- textField
    
        func textFieldShouldReturn(textField: UITextField!) -> Bool{
            registerWordStore = textField.text
    
            textField.resignFirstResponder()
            return true
        }
    
        // MARK:- registerButton
    
        @IBAction func registerWord(sender: AnyObject) {
            //データベース登録処理
        }
    
[/code]


CC BY-SA 3.0
2015-04-01T23:41:40.917
8669
2015-04-02T01:39:39.010
5210
question
swift uipickerview
PickerViewにデフォルト値を設定できない


初めまして。  
そのエラーはnilの値をアンラップしようとした際に出るエラーです。

つまりnilなのに強制的にOptionalから型を戻そうとしている感じです。  
通常の型はnilを扱えないのでこのようなエラーがでます。

値についてですが、delegateがないのでコールバックが呼ばれていないのではないでしょうか？


CC BY-SA 3.0
2015-04-02T01:39:39.010
8676
2015-04-02T01:39:39.010
297
8669
answer