質問: UIDatePicker のフォントを変えたくてググってみたら、textColor を変える方法は見つかったのですが、フォントについてはいい方法が見つかりませんでした。 ``` timePicker.setValue(UIColor.darkGray, forKeyPath: "textColor") ``` で動いたので、同じことをフォントでやろうとしてもダメみたいでした。 そもそも、なんでこのコードが動くのかよくわかりませんでした。 UIDatePicker が textColor というプロパティを持っているわけではないような気がするのですが、その辺も理解がふわっとしております。 Apple のドキュメント を読んでもこのコードの仕組みがよく分からず、途方に暮れるばかりです。 以下のコードを綺麗に動かすことのできる方がいらっしゃれば、是非お知恵を拝借できますと、大変助かります。 よろしくお願いいたします。 ``` import UIKit class ViewController: UIViewController { @IBOutlet var timePicker: UIDatePicker! override func viewDidLoad() { super.viewDidLoad() setUIThings() } func setUIThings() { //これは大丈夫 timePicker.setValue(UIColor.darkGray, forKeyPath: "textColor") //こっちはエラー timePicker.setValue(UIFont(name: "Times New Roman", size: 1.0), forKeyPath: "font") } } ```
回答: Swift は UIDatePicker のフォントを変える API を用意していないものの、 UIDatePicker ではなく、UIPickerView を使って同じ見た目にすることで解決できるとこちらに書いてありました。