Mvvmcross 是否支持 IOS BottomSheetController

Does Mvvmcross has support for IOS BottomSheetController

Mvvmcross 完美支持BottomSheetDialogFragment,Android。可以通过导航到它来指定视图模型和显示底部 sheet。

我没有找到 ios 的类似内容。 MVVMCross 是否支持 BottomSheetController? 非常感谢指向 Github 存储库或博客的链接。

我最终在 ios 演示器中使用了自定义演示属性和以下代码,它与导航服务配合得很好。

    public override void RegisterAttributeTypes()
    {
        base.RegisterAttributeTypes();

        AttributeTypesToActionsDictionary.Register<BottomSheetPresentationAttribute>(
            ShowBottomSheet,
            (viewModel, attribute) =>
            {
                if (_bottomSheetControllers.ContainsKey(viewModel))
                {
                    var bottomSheet = _bottomSheetControllers[viewModel];
                    _bottomSheetControllers.Remove(bottomSheet);

                    bottomSheet.DismissViewController(true, null);
                }
                return Task.FromResult(true);
            });
    }

    private Task<bool> ShowBottomSheet(Type viewType, BottomSheetPresentationAttribute attribute, MvxViewModelRequest request)
    {
        var contentController = BottomSheetsHelper.GetContentController(viewType);
        contentController.OnViewCreate(() => (request as MvxViewModelInstanceRequest).ViewModelInstance);

        var bottomSheet = new BottomSheetController(contentController);
        _bottomSheetControllers.Add(contentController.ViewModel, bottomSheet);

        Window.RootViewController.PresentViewController(bottomSheet, true, null);
        return Task.FromResult(true);
    }

    private readonly Dictionary<object, BottomSheetController> _bottomSheetControllers = new Dictionary<object, BottomSheetController>();