2

私はここstackoverflowで新しいです:)しかし、私は、これが私の質問をするのに適切な場所だと思います。私はCocoaとObjective-cの新しい開発者であり、Mac用の最初のアプリであるToDoアプリを作成しようとしています。

現時点では、ToDoを保存して削除できますが、CreationDate、Tags(mutablearray内)、ToDoが終了したかどうかなどの機能を追加したいと思います。ArrayControllerを使用していないので、エンコードされたNSMutableArrayをファイル(ライブラリ/アプリケーションサポート/ AppName)に保存し、そこから読み取ります。

次のように表示されるため、これはすべて1つの行に含まれている必要があります。

現在の外観http://img683.imageshack.us/img683/7595/bild2ss.png

Titleは、ToDoのコンテンツであり、Blue Boxは、Status(Blue =取り消し済み、Gray = Done)であり、Subtitleは、日付とタグ(03.01.2009-tag1、tag2)である必要があります。 、tag3)

オブジェクトをmutablearrayに追加する方法を説明しましたが、この4つの情報すべてをこの配列に保存したい場合は、これを作成する方法がわかりません。

この4つの情報で初期化されているモデルがありますが、これを保存するにはどうすればよいですか?情報のためにこれを1つの配列に保存し、この配列を可変配列に保存する必要がありますか?

4

2 に答える 2

6

解決策は実際には反対です。行ごとに1つのオブジェクトがあります。

これがモデルレイヤー(MVCのM )の出番です。各行のオブジェクトはモデルオブジェクトであり、作成するクラスのインスタンスであり、アイコン、タイトル、サブタイトルはそのオブジェクトのプロパティです。

次に、テーブル列のカスタムセルを作成して、モデルオブジェクトをそのように表示します。セルはビューレイヤーの一部であり、MVCのVです。

MVCのCは、モデルとビューの間にあります。これは、モデルを所有するオブジェクトであり、テーブルビューのデータソース(バインディングによるかどうかに関係なく)です。テーブルビューは、このオブジェクトからモデルオブジェクトを取得して、それらをセルにフィードします。この真ん中のオブジェクトはコントローラーです。

于 2010-01-03T12:44:32.000 に答える
1

今、私はそれを持っています!

ArrayControllerを使用したコンテンツのセルは1つだけです。

各行に-(id)initを使用して他の情報を設定しています。

コンテンツ、ステータス、日付の3つのオブジェクトがあり、ステータスごとに別の画像(完了、元に戻す、...)を表示します。

ご助力ありがとうございます!私は皆のためにベータを終えようとしています:)

于 2010-01-04T21:37:46.847 に答える