teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

2

修正および追記

2018/08/20 01:58

投稿

xAxis
xAxis

スコア1349

answer CHANGED
@@ -1,16 +1,31 @@
1
1
  delegateに```pickerView(_:numberOfRowInComponent:)```がありますよね。これを
2
2
 
3
3
  ```swift
4
- func pickerView(_ pickerView: UIPickerView, numberOfRowsInComponent component: Int) -> Int {
4
+ func pickerView(_ pickerView: UIPickerView, numberOfRowsInComponent component: Int) -> Int {
5
+
6
+ switch pickerView {
5
- if pickerView == agepicker {
7
+ case agepicker:
6
8
  return agedataList.count
7
- } else if pickerView == seibetuPicker {
9
+ case seibetupicker:
8
10
  return seibetudataList.count
9
- } else if pickerView = seasonPicker {
11
+ case seasonpicker:
10
12
  return seasonList.count
11
- } else {
13
+ case Prefecturespicker:
12
- prefecturesList.count
14
+ return PrefecturesList.count
15
+ default:
16
+ fatalError()
13
17
  }
18
+
19
+ // if pickerView == agepicker {
20
+ // return agedataList.count
21
+ // } else if pickerView == seibetupicker {
22
+ // return seibetudataList.count
23
+ // } else if pickerView == seasonpicker {
24
+ // return seasonList.count
25
+ // } else {
26
+ // return PrefecturesList.count
27
+ // }
28
+
14
29
  }
15
30
  ```
16
31
  とやって```pickerView(_:titleForRow:forComonent:)```を
@@ -29,6 +44,6 @@
29
44
  }
30
45
  ```
31
46
 
32
- としてしまえば動きそうな気がします(動作は未確認です)。
47
+ としてしまえば動きます(動作確認済み)。
33
48
 
34
- ちなみに4つも条件分岐あるならswitch文のもアリ
49
+ プラスαとしてswitch文いてみました。```pickerView(_:titleForRow:forComponent:)```switch文書いてみれば練習になるでしょう

1

追記

2018/08/20 01:58

投稿

xAxis
xAxis

スコア1349

answer CHANGED
@@ -29,4 +29,6 @@
29
29
  }
30
30
  ```
31
31
 
32
- としてしまえば動きそうな気がします(動作は未確認です)。
32
+ としてしまえば動きそうな気がします(動作は未確認です)。
33
+
34
+ ちなみに4つも条件分岐あるならswitch文を書くのもアリです。