Xamarin.iOS MVVMCross Игнорируется попытка закрыть окно с предупреждением о корне - PullRequest
0 голосов
/ 08 марта 2019

Я использую MVVMCross в своем проекте Xamarin.iOS, в котором, когда я пытаюсь перейти назад от SecondViewModel к FirstViewModel, я получаю предупреждение как «Игнорируемая попытка закрыть корень окна (тип ViewModel: SecondViewModel» в iOS во время его отлично работает на Android.

Вот мои ViewModels

FirstViewModel.cs

public class FirstViewModel : MvxViewModel
{
   private readonly IMvxNavigationService _navigationService;
   public FirstViewModel(IMvxNavigationService navigationService)
   {
      _navigationService = navigationService;
   }

   private IMvxAsyncCommand _navigateCommand;
   public IMvxAsyncCommand NavigateCommand
   {
      get
      {
          _navigateCommand = _navigateCommand ? ? new MvxAsyncCommand(NavigationMethod);
          return _navigateCommand;
      }
    }


    private async Task NavigationMethod()
    {
       var result = await _navigationService.Navigate<SecondViewModel,
       SecondViewModelArgs, SecondViewReturnArgs>(new SecondViewModelArgs
       {
          TextToSecondViewModel = Text
       });
       Text = result.textToFirstViewModel;
   }
}

SeconViewModel.cs

public class SeconViewModel : MvxViewModel<SecondViewModelArgs, SecondViewReturnArgs>
{

   private readonly IMvxNavigationService _navigationService;+
   public ListExampleViewModel(IMvxNavigationService navigationService)
   {
      _navigationService = navigationService;
   }

   public IMvxCommand NavigateBackCommand => new MvxCommand(NavigateBack);

   private void NavigateBack()
   {
      _navigationService.Close(this, new SecondViewReturnArgs { textToHomeViewModel = Text });
   }
}

Здесь NavigateCommand в FirstViewModel связан с кнопкой «Открыть Next ViewModel» в FirstView, а NavigateBackCommand в SecondViewModel связан с кнопкой «Закрыть представление» в SecondView.

Пожалуйста, скажите мне, что я здесь неправильно реализовал.

Спасибо

...