Swiftで遊ぼう! - 971 - UITextFieldを考える
- Swiftで遊ぼう!の前書き-> Life-LOG OtherSide
- 初心者はここから!-> 50オヤジでもできるiOS開発
- 私の本業、オフィシャルなブログ-> Life-LOG
- Swift 3 対応
いままで勉強のためにチュートリアルに取り組んでいましたが、いくらチュートリアルをこなしても実践的な能力は身につきませんね。
オリジナルプロジェクトを立ち上げてプログラミングをはじめると、チュートリアルで学んだiOSフレームワークの知識だけでは太刀打ちできず初っぱなから行き詰まってます(T_T)
UITextFieldクラス利用も色々と知らなければならないことがあります。
UITextFieldはUILabelと異なりユーザーからの入力を受け付けて反応することができ、そういう流れからUITextFieldにはデリゲーション・メソッドが用意されています。
プログラミング初心者は「デリゲーション・メソッド」と言われてもちんぷんかんぷんだと思います。今まで基本概念を学んできた私は違和感なく理解できるんですが、それはコツコツとチュートリアルを勉強してきたからです。
デリゲーションは日本語で言えば「委譲」です。委譲はOOP(オブジェクト指向プログラミング)の中核概念の1つです。
- 作者: 平澤章
- 出版社/メーカー: 日経BP社
- 発売日: 2011/04/07
- メディア: 単行本
- 購入: 6人 クリック: 92回
- この商品を含むブログ (19件) を見る
クラス継承を超えたつながりを作るための概念がポリモーフィズムで、Swift言語では「プロトコール&デリゲーション」と「エクステンション」が用意されています。特にプロトコール&デリゲーションは基本中の基本にあたります。
yataiblue.hatenablog.com
デリゲーション・メソッドを利用するためにUITextFieldとViewControllerの繋がりを用意する必要があります。
この準備の仕方にも基本的にストーリーボードの利用とコーディングによる方法があるので混乱しないように注意が必要です。
教科書を読んでチュートリアルをこなせばここまでの基本的な流れは理解できます。しかし、これだけで実践的なコーディングができないんです。
TextFieldからPopoverへのセグエ、入力した値をTextFieldに戻すためにデリゲーションが大活躍します。ここらの詳しい解説をしていませんがグーグルで調べてなんとか自分で解決しました。
そして悩んでいたのが、複数のTextFieldからどうやって1つだけ用意されているデリゲーションメソッドを利用すればいいのか分からなくなっていました。
やっぱりグーグルって素晴らしいですね。調べていると解決できました!
誕生日フィールドをタップするとDatePickerが表示されたPopoverが出現します。IDフィールドをタップするとNumberパッドのPopoverが表示されるようになりました。
分かっています。Popoverのレイアウトがむちゃくちゃです。まだStack Viewの絡んだレイアウト調整がちゃんと理解できてないんです。こういう実践的なコーディングの勉強がまだ不十分なんです。
まだまだですね(^_^;)