xamarin – 如何在MvvmCross中呈现iOS模态视图

xamarin – 如何在MvvmCross中呈现iOS模态视图,第1张

概述如何使用MvvmCross在iOS上呈现模态视图? 在iOS上使用Xamarin Studio和MvvmCross NuGet版本4.2.2,MvxModalSupportTouchViewPresenter,MvxModalNavSupportTouchViewPresenter或IMvxModalTouchView都不可用. ViewModel甚至需要知道特定视图在iOS上作为模态视图呈现的事 如何使用MvvmCross在iOS上呈现模态视图?

在iOS上使用Xamarin Studio和MvvmCross NuGet版本4.2.2,MvxModalSupporttouchVIEwPresenter,MvxModalNavSupporttouchVIEwPresenter或IMvxModaltouchVIEw都不可用.

viewmodel甚至需要知道特定视图在iOS上作为模态视图呈现的事实吗?

解决方法 MvvmCross是一个强大的页面导航框架.使用Showviewmodel< Aviewmodel>的默认导航将使用堆栈隐喻:在 Android上一个在另一个上面,在iOS上相互滑动,并使用<在任何一个平台上回去. 您可以通过采用IMvxModaliosVIEw以接口标记的形式给出一个提示,告诉VIEwPresenter给定视图是模态的. 在视图级别 采用IMvxModaliosVIEw协议:

public partial class AVIEw : MvxVIEwController,IMvxModaliosVIEw

在AppDelegate级别

将var setup = new Setup(this,Window)替换为:

var presenter = new MvxModalSupportIosVIEwPresenter(this,Window);var setup = new Setup(this,presenter);setup.Initialize();

在viewmodel级别

无需更改. viewmodel实际上没有意识到模态表示.调用:

Showviewmodel<Aviewmodel> // May be modal on certain platforms

要关闭页面并返回上一页,无论您的演示文稿样式如何,请在该viewmodel上使用Close(this).这将关闭模态对话框,或d出推送视图.完整的,可绑定的ICommand可能如下所示:

public ICommand BackCommand {    get { return new MvxCommand(() => Close(this)); }}

注意:在MvvmCross 4.2.2中,touch已重命名为iOS,因此IMvxModaltouchVIEw现在是IMvxModaliosVIEw.新的使用是:

>使用MvvmCross.iOS.Platform;>使用MvvmCross.iOS.VIEws.Presenters;

总结

以上是内存溢出为你收集整理的xamarin – 如何在MvvmCross中呈现iOS模态视图全部内容,希望文章能够帮你解决xamarin – 如何在MvvmCross中呈现iOS模态视图所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/web/1005667.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-22
下一篇 2022-05-22

发表评论

登录后才能评论

评论列表(0条)

保存