Create a new xcode project > 新規作成しましょう。
Pickerviewを検索 > Pickerviewを設置したい場所にドラッグ&ドロップ
Pickerviewが設置されました。複数のリストをスクロールして選択できるようになりました。
ここからはソースコードをプログラミングして細かい設定をしていきます。
ピッカービューのソースコード(UIPickerView)
任意で自由な項目を設定する方法
class PickerViewController: UIViewController, UIPickerViewDelegate, UIPickerViewDataSource{ override func viewDidLoad(){ super.viewDidLoad() picker.delegate = self picker.dataSource = self } let language = { "html" "css" "javascript" "java" "swift" } let school "ITCE" "TechAcademy" "CodeCampGate" } override func didReceiveMemoryWarning(){ super.didReceiveMemoryWarning() } @IBOutlet weak var picker: UIPickerView! //列数 func numberOfComponentsInPickerView(pickerView: UIPickerView) Int{ return 2 } //行数 func pickerView(pickerView: UIPickerView, numberOfRowsInComponent component: Int) Int{ switch component{ case 0: return language.count case 1: return school.count default: return 0 } } //文字列を表示させる func pickerView(pickerView: UIPickerView, titleForRow row: Int, forComponent component: Int) String!{ switch component{ case 0: return language[row] case 1: return school[row] default: return "" } } //列の幅を調整 func pickerView(pickerView: UIPickerView, widthForComponent component: Int) CGFloat{ switch component{ case 0: return 200.0 case 1: return 100.0 default: return 0.0 } } }
言語の表をhtml、css、javascript、java、swift、実際にプログラミングを学習する有名なスクールの表としてITCE、TechAcademy、CodeCampGateを並べてみました。
初期値を設定するソースコード
@IBAction func clickStart(sender: AnyObject){ picker.selectRow(1, inCoponent: 0, animated: true) //行番号、列番号、animated picker.selectRow(2, inCoponent: 1, animated: true) }
選択された項目を取得するソースコード
@IBAction func clickButton(sender: AnyObject){ let row0 = picker.selectedRowInCoponent(0) //let row 行番号 = picker.selectedRowInCoponent(列番号) let row1 = picker.selectedRowInCoponent(1) label1.text = "¥(row0)番目 ¥(language[row0])" label2.text = "¥(row1)番目 ¥(school[row1])" }