2

現在、MvvmCross を使用して、iOS (ターゲット iOS 8) Xamarin ソリューションで状態の保存/復元を行うことができません。コア ビュー モデルは、ここで指定されているように保存/復元を実装しますhttps://github.com/MvvmCross/MvvmCross/wiki/View-Model-Lifecycle

Android バージョンのソリューションでは状態が正しく保存および復元されますが、iOS バージョンでは機能しません。

関連するビュー コントローラーに復元 ID を設定し、「オプトイン」メソッドをアプリ デリゲート クラスに追加しました…</p>

    public override bool ShouldSaveApplicationState(UIApplication application, NSCoder coder)
    {
        return true;
    }

    public override bool ShouldRestoreApplicationState(UIApplication application, NSCoder coder)
    {
        return true;
    }

基本的な単一ビューの iOS Xamarin アプリを作成すると、アプリがバックグラウンドに入ったときにビュー コントローラーの EncodeRestorableState オーバーライド メソッドが呼び出されます。ただし、同様の単純な MvvmCross 実装では、このオーバーライドされたメソッドは呼び出されなくなりました (ビュー モデルの SaveState メソッドも呼び出されません)。

私は助けになるものを見つけることができず、多くの人が同様の質問をしているのを見つけたようですが、現在回答がありません (たとえば、MvvmCross の SaveState は iOS アプリケーションで呼び出されていません)。

これで正しい方向に向けるのに役立つ情報があれば、非常に感謝しています。ありがとう。

4

0 に答える 0