0

他の投稿で、iOS で複数のデリゲートを使用することは正しい方法ではなく (おそらく不可能でしょうか?)、代わりに NSNotifications などを使用して、他の (複数の) ビュー コントローラーにイベントを通知する必要があることを読みました。 .

アプリのランタイム全体でオブジェクトのデリゲートを同じに保つ方が良い方法ですか、それとも、任意の時点でモーダルな VC にデリゲートを変更すると便利ですか。

次に例を示します。バックグラウンドで実行され、アプリケーション内のいくつかの異なるビュー コントローラーで使用される乱数を生成するシミュレーター クラスがあります。一度に表示できる VC は 1 つだけなので、アクティブな VC をシミュレーターのデリゲートにして、UI が変わるたびにデリゲートを切り替えることができます。

...または、現在行っているように通知を使用して、読み込み時に VC に通知を登録させることもできます。

ありがとう

4

1 に答える 1

0

目的上、デリゲートは、他のオブジェクトに代わって何らかの作業を行うオブジェクトです。あなたが持っているように見えるのは、さまざまなオブジェクトがデータプロバイダーのクライアントである状況です。バックグラウンド タスクが、View Controller が支援しているだけの何かを達成することを担当しているというあなたの説明には意味がありません。

実装を構造に適合させるには、バックグラウンドオブジェクトをビューコントローラーの「データプロバイダー」プロパティとして割り当てるか、通知をそのままにすることをお勧めします...結合の程度と、どのクラスを開始するかによって異なりますデータ転送。

于 2012-12-18T15:16:13.763 に答える