このRequestRemoveBackStep()
メソッドはIMvxViewDispatcher
インターフェースのメンバーであり、一部のプラットフォームに実装されています。
public interface IMvxViewDispatcher : IMvxMainThreadDispatcher
{
bool RequestNavigate(MvxShowViewModelRequest request);
bool RequestClose(IMvxViewModel whichViewModel);
bool RequestRemoveBackStep();
}
https://github.com/slodge/MvvmCross/blob/vnext/Cirrious/Cirrious.MvvmCross/Interfaces/Views/IMvxViewDispatcher.csから
ただし、これを常に行うのは完全に簡単ではありません...たとえば、Droidでは、現在、次のように実装されています。
public bool RequestRemoveBackStep()
{
// not supported on Android? Not sure how to do this currently...
return false;
}
https://github.com/slodge/MvvmCross/blob/vnext/Cirrious/Cirrious.MvvmCross.Droid/Views/MvxAndroidViewDispatcher.csから
この機能についてログに記録された問題があります-たとえばhttps://github.com/slodge/MvvmCross/issues/80-しかし、この機能は将来のMvx実装から単に削除される可能性があります-特にそれを行うのは非常に簡単ではないためすべてのプラットフォームのすべてのビュー。
このタイプの機能が今必要な場合は、この機能を実装する独自の方法を見つける必要があります...特定のユースケースが何であるかに応じて(申し訳ありませんが、現在のユースケースの詳細は私にはわかりません)質問から)。
利用可能ないくつかの技術的なルートがあります:
NoHistory
フラグを使用する
RequestClose(oldviewModel)
通話の使用
- ロジックを追加する
Presenter
- を使用し
Messenger
てビューを要求し、自分自身を閉じます。