MVC パラダイムでは、ビューはコントローラーとのみ、ブラインド通信 (target-action または delegate/dataSource) を介して通信できます。それは理解していますが、デリゲートを使用してビューが別のビューと通信する場合、MVC の違反になりますか?
質問する
193 次
3 に答える
0
これについての私の意見は、オブザーバーデザインパターンを使用し、単に通知を使用することです(NSNotification)
于 2012-04-26T17:15:52.173 に答える
0
ほとんどいつも。ビューのデリゲートは、別のビューであってはなりません。コントローラーである必要があります。コントローラーは、他のビューで変更を行うのに適した場所です。
ビューは、別のビューが気にするようなことを言うべきではありません。ビューはデリゲートに「感動しました」などと言うべきです。なぜ別のビューが気にするのでしょうか? 「ああ、ここに触れるということは、アクティブなフォーカスを移動する必要があることを意味します。現在のアクティブなビューにフォーカスを手放すように指示する必要があります」(例として)。I view は、より広範なアプリケーションでイベントが意味するものを決定する責任はなく、発生したイベントのみを決定する責任があるため、他のビューに関心のあるメッセージを生成する可能性はほとんどありません。
于 2012-04-26T17:26:44.803 に答える
-1
私自身は初心者です。しかし、そうではないと思います。jspページが呼び出されると、別のjspページにリダイレクトされる可能性があります。私はそれがいつか起こるのを見ました。ある意味、別のビューを呼び出すビューだと思います。
于 2012-04-26T17:15:40.803 に答える