IsActualHostValid() public method

public IsActualHostValid ( Type forViewModelType ) : bool
forViewModelType System.Type
return bool
Beispiel #1
0
        protected virtual void ShowFragment(MvxViewModelRequest request)
        {
            var bundle            = new Bundle();
            var serializedRequest = Serializer.Serializer.SerializeObject(request);

            bundle.PutString(ViewModelRequestBundleKey, serializedRequest);

            if (request is MvxViewModelInstanceRequest)
            {
                Mvx.Resolve <IMvxChildViewModelCache>().Cache(((MvxViewModelInstanceRequest)request).ViewModelInstance);
            }

            if (!_fragmentHostRegistrationSettings.IsActualHostValid(request.ViewModelType))
            {
                Type newFragmentHostViewModelType =
                    _fragmentHostRegistrationSettings.GetFragmentHostViewModelType(request.ViewModelType);

                var fragmentHostMvxViewModelRequest = MvxViewModelRequest.GetDefaultRequest(newFragmentHostViewModelType);
                ShowActivity(fragmentHostMvxViewModelRequest, request);
                return;
            }

            var mvxFragmentAttributeAssociated = _fragmentHostRegistrationSettings.GetMvxFragmentAttributeAssociatedWithCurrentHost(request.ViewModelType);
            var fragmentType = _fragmentHostRegistrationSettings.GetFragmentTypeAssociatedWith(request.ViewModelType);

            GetActualFragmentHost().Show(request, bundle, fragmentType, mvxFragmentAttributeAssociated);
        }