Swift3 Pickerの実装について(未完成読まないこと!)

Pickerの実装について、説明する。 実際のソースコードからおっていきたい。

 @IBOutlet weak var uiBirthday: MsDateTextField!

Picker用のクラスを作成する②

class MsDateTextField: UITextField, UITextFieldDelegate {

viewDidLoadで自作のクラスのプロパティへアクセス①

override func viewDidLoad() {
~
uiBirthday.textUiPlaceAdjust = textUiPlaceAdjuster

textUiPlaceAdjustプロパティとは②の中で宣言

  weak var textUiPlaceAdjust: TextUiPlaceAdjustDelegate?

TextUiPlaceAdjustDelegate型③は

そのプロトコルでは入力の始まりと終わりの関数を用意

protocol TextUiPlaceAdjustDelegate: class {
    func textUiDidBeginEditing(_ textUi: UIView)
    func textUiDidEndEditing(_ textUi: UIView)
}

プロコルはどこにでも記載できるので関係する③

class TextUiPlaceAdjuster: NSObject,
    UITextFieldDelegate, UITextViewDelegate, TextUiPlaceAdjustDelegate {

のクラスの上に宣言