4422


Xcode6(Swift)で、PickerViewを設置して、部品下に遷移ボタンを置いたとします。  
仕組的には、PickerViewで事柄を選択し、部品下にあるボタンを押すと、選択した事柄の詳細ページに遷移するというものなのですが……

[code]

    import UIKit
    
    class SecondView: UIViewController, UIPickerViewDelegate {
    
        var stations = ["渋谷", "新宿", "六本木", "東京"]
    
        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.
        }
    
    
        func numberOfComponentsInPickerView(pickerView: UIPickerView!) -> Int {
            return 1
        }
    
        func pickerView(pickerView: UIPickerView!, numberOfRowsInComponent component: Int) -> Int{
            return stations.count
        }
    
        func pickerView(pickerView: UIPickerView!, titleForRow row: Int, forComponent component: Int) -> String!{
            return stations[row]
        }
    
    
        @IBAction func nextThird(sender: AnyObject) {
            if (stations.count == [0]){
                 let nextThirdView = UIStoryboard(name: "Main", bundle: nil).instantiateViewControllerWithIdentifier("tre") as UIViewController
                 nextThirdView.modalTransitionStyle = UIModalTransitionStyle.PartialCurl
                self.presentViewController(nextThirdView, animated :true,completion:nil)
    
            }
    
        }
    
    }
    
[/code]

以上のように事柄を「渋谷」「新宿」「六本木」「東京」の４つに設定した場合、  
「渋谷」を選択し、ボタンを押した時に「tre」と名付けたViewControllerに遷移したいのですが、

[code]

    if (stations.count == [0]){
                     let nextThirdView = UIStoryboard(name: "Main", bundle: nil).instantiateViewControllerWithIdentifier("tre") as UIViewController
                     nextThirdView.modalTransitionStyle = UIModalTransitionStyle.PartialCurl
                    self.presentViewController(nextThirdView, animated :true,completion:nil)
    
                }
    
[/code]

この一文でつまづいてしまいます。

後半の画面遷移のコードは大丈夫だと思うのですが、肝心のif文の部分がどう書いたら良いのか分かりません。

お詳しい方がいましたら、どうかご回答宜しくお願い致します。


CC BY-SA 3.0
2015-01-11T17:09:21.700
4414
2015-01-12T08:43:08.333
2015-01-12T08:43:08.333
5832
question
swift xcode
UIPickerViewで選択中の項目をif比較で使いたい


UIPickerViewの選択中の列を取得して、要素 "渋谷" の配列のインデックスである「0」と比較すべきでしょう。

[code]

    if (myPickerView.selectedRowInComponent(0) == 0){
      println("Shibuya.")
    }
    // myPickerViewはじぶんが接続したUIPickerViewの名前に合わせてください。
    
[/code]


CC BY-SA 3.0
2015-01-11T21:46:04.913
4422
2015-01-11T21:46:04.913
4414
answer