入門ノート(Xcode5+iOS7対応)p313、p316正誤表

入門ノート(Xcode5+iOS7対応)のChapter7-1 p313とp316のコードのファイル名、タイトルに誤りがありました。

p313
2番目のコードのファイル名が間違っていました。
誤:FlipsideViewController.m
正:MainViewController.m

p316
2番目のコードのタイトルとファイル名が間違っていました。
誤:ヘッダファイル
正:実装ファイル

誤:FlipsideViewController.h
正:FlipsideViewController.m

以上、訂正してお詫びいたします。ご指摘ありがとうございました。 m(_ _)m

入門ノート(Xcode5+iOS7対応)p231正誤表

p231のコードに間違いがありました。p230から続くex_UIPanGR-drag_affineプロジェクトのViewController.mのコードですが、これはすでにサポートページの正誤表で記しているように1つ前のcenterプロパティを移動させるサンプルのコードが重複して掲載されています。
サポートページにて正しいコードを掲載していますが、そのコードにも誤りがありました orz

p230_teisei.jpg

正しいプロジェクトファイルは次のリンクからダウンロードできます。
ex_UIPanGR-drag_affine.zip

もともとはトンボをアウトレット接続せずにsenderを活用した汎用的なコードだったのですが、キャストの必要性などもあって本来の説明内容とは違う部分に難しさが出てくるので、1つ前のサンプルと同じようにドラッグするトンボをアウトレット接続する方法に変更しました。ところが、アウトレット接続したのはいいもののキャストする手法のコードを書き替えないままにしていました。
コードの掲載ミスの見逃し、正誤表でコードのミスに気付かないという二重の間違いを犯してしまいました。混乱させてしまって申し訳ありません。お詫びいたします。

写真やイラストなどをタップしたりドラッグするなどインタラクティブな操作をしたいときはGesture Recognizerを利用します。このとき、ImageViewをドロップして画像を割り当てた場合には、「User Interaction Enabled」のチェックがされていないので注意が必要です。Mediaライブラリから画像をドロップすると最初からチェックされています。

「詳細!Objective-C iPhoneアプリ開発入門ノート Xcode5+iOS7」では、Chapter6-1でイメージビューのタッチイベントを解説しています。節の冒頭のp218で「User Interaction Enabled」をチェックしなければならないと書いていますが、ここにしか書いていないので、後のほうではうっかりこのチェックを忘れてしまってアプリが思うように動作せずに苦労してしまう方がいるかもしれませんね。ピンチ操作などの複数の指を使う操作では、合わせて「Multiple Touch」もチェックします。

「User Interaction Enabled」をチェックをお忘れなく!!

「詳細!Objective-C iPhoneアプリ開発入門ノートXcode5+iOS7対応」のChapter7-3 p354にあるExitで戻るUnwind Segueを使うサンプルです。p337からナビゲーションコントローラとテーブルビューを組み合わせたシーン遷移の続きで、遷移の階層を戻るのではなく、Exitを利用してトップメニューにいっきに戻ります。Exitによるシーン移動はmodalタイプのシーンの戻りでも利用できます。

ex_UITableView_Navigation_Exit

(Chapter7-3 p354)

※お詫び
書籍では「MENUに戻る」ボタンを「MENIUに戻る」とスペルミスしています。
このビデオを作る際に気付きました。訂正してお詫びします。
なお、ボタンのタイトルなので動作には影響しません。

「詳細!Objective-C iPhoneアプリ開発入門ノートXcode5+iOS7対応」のChapter9-3 p427にあるUIViewクラスのトランジションを使った切り替えを行うサンプルです。

UIViewクラスのtransitionFromView:toView:duration:options:completion:メソッドを使ってビューを切り替えます。NSTimerクラスでタイマーを作り、ビューを切り替えるメソッドを3秒間隔で呼び出しています。トランジションにはフリップやディゾルブの映像効果も利用できます。

ex_UIView_transitionFromView

(Chapter9-3 p427)

「詳細!Objective-C iPhoneアプリ開発入門ノートXcode5+iOS7対応」のChapter6-4 p278にあるUIScrollViewクラスとUIPageControlクラスを使うサンプルです。

画像を横にスワイプするとページ送りできます。表示しているページの位置は下のページコントロール「○●○○○」で示します。ページごとのカスタムクラスを作り、UIScrollViewDelegateプロトコルのscrollViewDidScroll:デリゲートメソッドでページ送りを処理しています。

ex_UIScrollView-paging

(Chapter6-4 p278)

「詳細!Objective-C iPhoneアプリ開発入門ノートXcode5+iOS7対応」のChapter9-5 p462にあるUIDynamicAnimatorクラスを使うサンプルです。

UIAttachmentBehaviorクラスを使って、Tシャツにカエルを貼り付けています。アタッチメントのビヘイビアを調整することでバネで連結しているような貼り付けができます。「Tシャツにカエルを貼る」という設定ですんなり納得する人は40代以上とかなんですかね? (^^?

ex_UIDA_Attachment_items

(Chapter9-5 p462)

Objective-C iPhoneアプリ開発入門セミナー

objective-Cの入門者のためのセミナーを東京原宿にあるロクナナワークショップで定期的に行っています。

午前11時から夕方6時までの7時間(お昼休み、休憩はありますよ(^_^))で、少しはプログラミング経験があるけどObjective-Cは初めてと人からを対象にしたセミナーです。6人までの少数制で、教室にMacBook Airが1人1台ずつ用意してあります。

今月12月は7日(土)の1回です。来年の開始は平日の2月12日(水)11:00~18:00の予定ですので、どうぞよろしくお願いします。

詳しくはこちらをどうぞ(^^)/
大重美幸のiPhoneアプリ開発Objective-C+Xcode入門講座

「詳細!Objective-C iPhoneアプリ開発入門ノートXcode5+iOS7対応」のChapter9-5 p451にあるUIDynamicAnimatorクラスを使うサンプルです。

UICollisionBehaviorクラスで衝突のビヘイビアには、addBoundaryWithIdentifier:forPath:メソッドで曲線の壁を作ることもできます。壁の位置にはDrawBezierPathクラスをカスタム定義して曲線を引いています。カエルがぴょんぴょん跳ねずに曲線に沿って滑るように落ちるようにUIDynamicItemBehaviorの値を調整しています。

ex_UIDA_Gravity_Collision_bezierPath

(Chapter9-5 p451)

「詳細!Objective-C iPhoneアプリ開発入門ノートXcode5+iOS7対応」のChapter9-5 p446にあるUIDynamicAnimatorクラスを使うサンプルです。

UICollisionBehaviorクラスで衝突のビヘイビアを作り、そのビヘイビアにaddBoundaryWithIdentifier:fromPoint:toPoint:メソッドで直線の壁を作ります。壁の位置にはDrawLineクラスをカスタム定義して直線を引いています。カエルはタイマーを使って1秒間隔で追加しています。

ex_UIDA_Gravity_Collision_lineBound

(Chapter9-5 p446)