Swiftで遊ぼう! on Hatena

あしたさぬきblogでやってた初心者オヤジのiOSプログラミング奮闘記がHatenaに来ました

Swiftで遊ぼう! - 975 - Numpad Popoverの実装に関して

誕生日を入力するためのDate PopoveはViewControllerに値を渡さないといけないのでProtocolを用意しました。ViewControllerはこのプロトコールに準拠することで値を表示することができます。このやり方だと準拠すべきプロトコールがクラス宣言の後に並びます。UITextFieldDelegateやUIPopoverPresentationControllerDelegateも並ぶので長々しく見た目はよくありません。

カスタムPopoverを1つ作るたびにProtocolに準拠させるというコーディングスタイルは正しいのでしょうか?かなり疑問に思っています。

Numpad Popoverという新たなカスタムPopoverを用意しました。この入力値をViewControllerに渡すためにProtocolを用意しました。渡す値の型もDate Popoverと異なるので共通化はできないと思います。ということで今回はExtensionを使ってみました。

f:id:yataiblue:20170513212240j:plain

Numpad Popoverで数字をタップするとリアルタイムにテキストフィールドに表示されるようにできました。

こういう場合Protocolに準拠させるのとExtensionを追加するのとどちらがふさわしいのでしょう?

悩みはつきません(^_^;)