0

I have the following (view) controller arrangement:

an uitableview --(embedded in)--> navigation controller --(embedded in)--> Tab bar controller --(modal segue to)--> button in a view (uiviewcontroller).

description of my problem:

The view with the button is the initial view of my app. Pressing this button leads to a tableview in a tab bar. At the beginning the table view is empty, but you can manually add information on the cells, like names. However, once you go back to initial view (with button) and press the button again, the previous entries in the table view are erased.Can somebody give a hint how to retain these entries with the given arrangement. Thank you very much in advance.

4

2 に答える 2

0

これは、実際にはインターフェイス自体に関するものではないため、かなりの問題です。それは、一般的なオブジェクト指向プログラミングとオブジェクトの寿命と関係があります。

基本的に、データはオブジェクト階層の上位に格納する必要があります。インターフェイスオブジェクトの構築/破棄全体で持続する必要があります。これは、DBやファイルなどの永続化可能なデータストアにデータを保存することによっても実行できますが、ストアからデータまたはデータのサブセットを抽出する手段を保存する必要があります。

データを永続化する場合は、データをシングルトンデータクラスに格納して静的に参照するか、UIApplicationオブジェクトに格納して、各オブジェクトを作成するときに階層に渡します。おそらく、各オブジェクトをサブクラス化し、データにrefを渡す新しいコンストラクターを追加する必要があります。

于 2012-09-07T14:59:46.080 に答える
0

シングルトンパターンを使用できます。どこからでもアクセスできるオブジェクトの共有インスタンスが作成されます。ユーザーがテーブルに行を追加したときに書き込み、tableView にアクセスしたときにそれを読み取ることができます。

ここにちょっとした助けがあります:シングルトンパターン

EDIT:コアデータを使用することもできますが、状況によっては適切ではない場合があります(そのデータに関するWeb上のドキュメントがたくさんあります)

于 2012-09-07T15:01:06.677 に答える