1

prepareForSegue メソッドで設定したビューコントローラーのプロパティを設定しています。次に、このビューコントローラーは、セグエを使用してプッシュされる TabBar 内のアイテムを通じて表示されます

問題は、このビューコントローラーに設定しているこのプロパティが 3 つのビューで使用されることです (すべてのビューに tabbarviewcontroller からアクセスできます)。

基本的に私は持っています:

| View Controller | -> | TabBarController | -> |ViewController|
                                            -> |ViewController|
                                            -> |ViewController|

すべてのビューコントローラー間でデータを共有する最良の方法は何ですか? シングルトンをマネージャーとして使用し、prepareForSegue メソッドでプロパティを設定する代わりに、このマネージャーに値を設定してすべてのビューで呼び出すことを考えていますが、これを達成するためのより良い方法があるかもしれません。

4

1 に答える 1

1

3 つのビュー コントローラー間でデータを共有する場合、最善の方法は "モデル" オブジェクトを作成し (モデル ビュー コントローラーのように)、アプリ内のすべてのオブジェクトで利用できるようにすることだと思います。

シングルトンはこれに最適でありprepareForSegue、View Controller がアクセスする必要がある前に、必要に応じて変更できます。

于 2012-10-22T17:57:44.510 に答える