2009-07-20 13 views
22

私はrealllly iPhone開発に新しいと私はかなり私の知識のために得ている。私はちょうど私のプロジェクトにこれらの4-6の写真をどのようにプログラムするかを決める助けが必要です。UIView対UIViewController

私は基本的に、ユーザーがある写真から別の写真にスワイプできる漫画本を作りたいと思っています。これらの画像はすべてUIVIEWまたはUIViewControllerにあるべきですか?

これらの写真を接続する際のヒントは、タッチ用のコードを追加できるのですばらしいものになります。

答えて

41

UIViewControllerは何も表示できません。単にUIViewの表示を調整するだけです。実際の画像はUIViewで処理する必要があります。さらに、UIViewはタッチ、ジェスチャーなどの認識を担当しますが、それが終了するところです。あなたのプログラムの実際の反応は、UIViewControllerまででなければなりません。

つまり、UIViewサブクラスに左または右にスワイプを認識させる方法を教え、スワイプが発生したと判断したら、そのイベントのUIViewControllerサブクラスに通知します。コントローラーは、次に表示される画像を決定し、設定するようにビューに指示します。

これはModel-View-Controllerパターンの一部です。これは、iPhone開発でよく知られて広く使われているパターンなので、読んでみるとよいでしょう。

4

両方を使用します。 Cocoa Touchの開発は、MVC(Model、View、Controller)メソドロジに従います。これは、コードロジックとユーザーインターフェイス要素を分離する方法です。 UIViewは、それがどのように見えるかを処理する場所で、UIViewControllerはイベントを処理するクラスです。多くのコンテンツページをスワイプする最も簡単な方法を知りたい場合は、UIPageControlを調べてください。

4

写真は、おそらくあなた自身のビュークラスを作成する必要はありませんのUIViewオブジェクトまたはなどのUicontrol、UIScrollViewの、とのUIViewから

をサブクラス化したオブジェクトに(addSubview経由)を追加する必要があります例えば、MyView。私は、カスタムビューを作成する唯一の本当の理由は、ビュー内を移動するテキストやイメージなど、効率の高い、または非常に動的なコンテンツのためだということを発見しました。 drawRect関数を実装する予定がない場合は、カスタムビューを気にしないでください。

UIViewControllerをサブクラス化する必要があります。ビューの動作を管理し、(通常)コントロールするビューを構成するのに最適な場所です。

おそらくUIPageControlはスワイプの動作を実装する最も簡単な方法ですが、扱いにくい場合があります。ドキュメントを注意深く読んでください。

関連する問題