2

私は、Cocoa と iPhone プログラミングについてまったくの初心者です。

Xcode Utility Applicationテンプレートを使用して、次のような単純なアプリを実装しています。

  • ユーザー名を収集するためのテキスト フィールドを含むビュー
  • ユーザー名を使用してリモート サイトへの接続を開始し、HTTP 経由でデータを取得する接続ボタンのあるビュー。データは、画面上にテキスト文字列として表示されます。

これは、MVC パターンでの私のVIEWを表していると思います。

ユーザー名を保存し、モデルを表すすべての接続作業を行う単純なクラスを作成し、 AppDelegate内でインスタンス化しました。

ここに非常に単純化されたスケッチがあります:

簡略化されたスケッチ

サブビュー (ユーザー名) に深くネストされたデータを取得する方法や、ネストされた親ビュー (接続ボタン) でアクションをトリガーする方法がよくわかりません。

私の質問は:

このアーキテクチャを実装するための最良/最もクリーンな方法は何ですか?

CONTROLLERを実装するにはどうすればよいですか?

助けてくれてありがとう、
ポール

4

1 に答える 1

2

コメントに基づいて私の答えを更新する:

ほとんどの場合、コントローラーに状態が含まれていても問題ありません。配列や、アプリケーションを作成しているモデルオブジェクトのインスタンスのように。

モデルオブジェクトからネットワークコードを削除し、代わりにコントローラーに配置します。この場合、その接続アクションがトリガーされるViewControllerです。

元の答え:

サブビュー(ユーザー名)の奥深くにネストされたデータを取得する方法や、ネストされた親ビュー(接続ボタン)でアクションをトリガーする方法は、私にはよくわかりません。

ユーティリティアプリケーションテンプレートを使用すると、すでにいくつかのViewControllerがあります。

コントローラ内でUIへの参照を取得するには、IBOutletsInterfaceBuilder内でそれらを宣言して接続する必要があります。アクションに応答するにIBActionsは、ViewControllerで宣言して実装し、InterfaceBuilderでもそれらを接続する必要があります。インスペクターの[接続]ペイン(左から2番目)でこれを行います。

于 2009-05-29T11:52:26.623 に答える