Objective-C 基本講座

ターゲットアクションデザインパターンを使いタップに反応する

全333コースを10日間無料で

ぜひご覧ください。

無料で視聴する すべての加入プランを見る
または
オブジェクト間の連携方法ターゲットアクションデザインパターンと、それを利用するUITapGestureRecognizerを紹介します。
講師:
04:29

字幕

このレッスンでは ターゲットアクションデザインパターンと それを使って タッチに反応する方法を学習してください UIView ではユーザーのタッチに 対応する為のメソッドが用意されていて クラスを派生させて それらのメソッドをオーバーライドすれば 非常にきめ細やかな対応が可能となります ただし派生しか方法がないわけではありません 画面のタップに反応すればいいだけなら わざわざ UIView を派生させるよりは UItapGestureRecognizer を 使った方が簡単でいいでしょう UITapGestureRecognizer は 自分が登録された UIView と連携して ユーザーの指の動きを観察し タップを検出したら 事前に指定されていたオブジェクトに そのことを通知します UITapGestureRecognizer と 通知先として指定されたオブジェクトの関係は デリゲートデザインパターンに似ていますが こちらはプロトコルを使わず 呼び出し対象のオブジェクトと 呼び出してもらうメソッドを指定します プロトコルがなくメソッドの名称にも 制限はありませんが 指定できるメソッドは引数なしか オブジェクトの引数1つの どちらかに限定されます いずれも戻り値はありません オブジェクトの引数1 つの場合は 引数は送り元のオブジェクトとなります 今回なら UITapGestureRecognizer と いうことです このような連携方法をアップルでは ターゲットアクションデザインパターンと 読んでいます アップルの定義では ターゲットアクションデザインパターンで 渡せるメソッドには 引数が2 つのものも用意されていますが UITapGestureRecognizer は 引数1つです メソッド の指定では セレクタと呼ばれる型の値を渡します これはメッセージ送信から メソッド呼び出しの過程で使われるもので 「メソッド名 :」 「ラベルから作り出される値」です オブジェクトはメッセージから作り出される― セレクターを使い 自分が持つメソッド群から 対応するメソッドを探し 見つかったなら そのメソッドを呼び出して引数を渡します このセレクタをソースコード上で作るには セレクターを使い メソッド名 コロン ラベルを与えます このオブジェクトとセレクタは UITapGestureRecognizer の 初期化時に 指定するのが一般的です そして作成した UITapGestureRecognizer を タップを検出したい UIView に addGestureRecognizer で登録します これでタップ検出から オブジェクトのメソッド呼び出しまでの 連携の設定が完成します 実際に UITapGestureRecognizer を使って メソッドを呼び出してみましょう Xcode の画面に切り替えます UITapGestureRecognizer を作って セルフビューに登録しています ターゲットに viewController 自身を指定し アクション側には新しく追加した― didTap メソッド指定しています セレクタを使って 変換することを忘れないでください これで画面がタップされた時に viewController の didTap メソッドが呼び出されます didTap メソッドではコンソールに タップされたと出力させてみました 画面を押すたびにタップされたと出ます このレッスンでは ターゲットアクションデザインパターンと それを使ってタッチに反応する方法を 学習しました

Objective-C 基本講座

このコースはプログラミング初心者でもObjective-CによるiOSアプリ開発の体系的な理解が得られるように構成されています。プログラムの動作の原理、Objective-C言語の役割、そこで利用されるCocoa touchオブジェクトの役割、基本的なiOSアプリの作成方法などを学習します。ぜひこのコースをアプリ開発に踏み出すさいの第一歩としてください!

6時間39分 (69 ビデオ)
現在、カスタマーレビューはありません…
 
ソフトウェア・トピック
価格: 3,990
発売日:2015年11月18日

このコースは、「オンデマンド」でご利用可能であり、ダウンロードすることもオンラインで見ることもできます。

ダウンロードすると、オフラインでコースを使用し、豊富なインターフェースをフルに活用できます。複数のデバイスを使用したり、 一度に全コースをダウンロードしたくない場合は、アカントにログインして、ストリーミング・ビデオとしてコースのレッスンを視聴してください。

ビデオトレーニングをお楽しみいただけますように! お問い合わせは、cs-jp@lynda.com宛までご連絡ください。