0

Prims では、MVVM パターンでユーザー インタラクションを実装するための 2 つの一般的なアプローチがあります。http://msdn.microsoft.com/en-us/library/gg405494(v=pandp.40).aspx#sec10 1. ビュー モデルがユーザーとの対話を開始するために使用できるサービスを実装します。これらのイベントにバインドされ、対話の視覚的側面を管理するビュー内のコンポーネントとともに、ユーザーと対話する意図を表現するためにビューモデルによって発生するイベント。

MvxPresentationHint が最初のアプローチであるべきだと思います。2番目のアプローチをサポートするのはどうですか?

4

1 に答える 1

0

dialogこの段階で、ビューモデルとビューの間の正式に文書化された一般的なクロスプラットフォームの相互作用パターンを実装した人は誰もいないと思います。

私は個人的に、次のようないくつかのメカニズムを使用しました。

  • ビューモデルのメッセンジャーを使用して一般的な 'ask y/n' リクエストを送信し、ビューが 'answer was y/n' レスポンスを送信します。

  • カスタム プレゼンターを使用して、ポップアップ ダイアログで ShowViewModel の動作をオーバーライドする

これらのアプローチはどちらもうまく機能し、テスト可能で、少量の「分離コード」のみを使用し、カスタマイズが容易で、弱参照のみを使用していたため、iOS でメモリの問題は発生しませんでした。一般に、将来同様の ux 要件に直面した場合、私はメッセンジャー アプローチを最初の選択肢として検討すると思いますが、それは個人的な設計上の好みであり、プリズムのような「ベスト プラクティス」のエッセイではありません。

于 2013-07-16T07:56:11.983 に答える