Swift隨手紀錄Day9-PickerView
Darren
Swift
防止偷懶日記Day9 接下來想要實做的就是把打席結果弄成選項給使用者做決定 目前想到的是使用UIPickerView, 或者是用ActionSheet 想了想用ActionSheet好像需要用很多層 所以今天先來試試UIPickerView
防止偷懶日記Day9
接下來想要實做的就是把打席結果弄成選項給使用者做決定
目前想到的是使用UIPickerView, 或者是用ActionSheet
想了想用ActionSheet好像需要用很多層
所以今天先來試試UIPickerView
今天的成果大概長這樣

那就從製作UIPicerㄐView下手
先新增一個RecordPickerController.swift的檔案到Controller的Group內
import
class
RecordPickerController
UIViewController
UIPickerViewDelegate
UIPickerViewDataSource
let
=
"H"
"BB"
"E"
"K"
"SC"
var
UIPickerView
override
func
viewDidLoad
super
view.backgroundColor =
recordPickerView =
UIPickerView
recordPickerView.frame =
CGRect
0
self
/
2
self
200
recordPickerView.showsSelectionIndicator =
true
recordPickerView.delegate =
self
recordPickerView.dataSource =
self
self
}
func
numberOfComponents
in
pickerView
UIPickerView
Int
return
1
}
func
pickerView
_
pickerView
UIPickerView
numberOfRowsInComponent
component
Int
Int
return
}
func
pickerView
_
pickerView
UIPickerView
titleForRow
row
Int
forComponent
component
Int
String
return
}
func
pickerView
_
pickerView
UIPickerView
didSelectRow
row
Int
inComponent
component
Int
print
"select \(recordtypeArray[row])
}
}
9到21行在viewDidLoad裡面實作並設定pickerView的大小、delegate、datasource
然後實作繼承UIPickerViewDelegate, UIPickerViewDataSource需要實作的numberOfRowsInComponent跟titleForRow
回傳前面設定的recordtypeArray的count跟內容
接下來回到RecordController修改一下sentButton()
func
sentRecord
sender
UIButton
let
=
RecordPickerController
present(controller, animated: true
nil
}
其實蠻偷懶的只是將畫面推到RecordPickerController,接下來應該要讓推出來的畫面只是個子畫面
放一格在現在畫面中間就好,不過這就之後再加上去
這兩天想了想UI還是需要再做一些調整,看明天想先作哪邊XD