1

ある子ビューから別の子ビューにデータを送信する方法を研究しています。アプリケーションにはいくつかのビューがあり、そのうちの 1 つは一種のリアルタイム設定ビューです。設定の変更は、他のビュー内のものに影響するはずです。

NSUserDefaultsは人気があるようですが、永続的なデータやデータベース/ファイルへの自動保存は必要ありません。私が避けたい潜在的な減速のように見えます。

2 番目に人気があるのは、いくつかの共通のトップ レベル オブジェクトへの参照を各子ビューに渡すことです。これを行う方法を詳しく教えてくれるチュートリアルが見つかりませんでした...おそらくとても簡単で、チュートリアルは必要ありません-一度理解したら! 正しい方向(URL)を教えていただければ幸いです。

質問: 1 つの「シングルトン オブジェクト」を使用して「グローバル データ」を保存し、いつでもどこからでもアクセスすることを考えています。これで何が問題になる可能性がありますか?たとえば appDelegate.m に作成すると、誰かがアクセスしようとする前に存在するはずですよね?

このサンプルコードを見ています。

4

2 に答える 2

1

デリゲートや通知を使用することをお勧めします。

アプリデリゲートで新しいシングルトンを作成する代わりに、アプリデリゲートに必要なデータ(または、さらに良いことに、データへの参照)を追加し、ビューにアプリデリゲートへの参照を持たせます。

ビューが表示するデータへの変更を追跡できるように通知を設定することもできます。

于 2009-11-19T11:27:00.430 に答える
0

シングルトンの利点は、[singletonClasssharedInstance]を介して最初にアクセスしたときに自動的に作成されることです。したがって、起動時に「作成」する必要はありません。任意のビューからアクセスする必要があるのがグローバルデータである場合、シングルトンがこれを行う正しい方法である可能性があります。

于 2009-11-19T11:24:29.467 に答える