Mvvmcross 8.0.2 Android MvxDialogFragment 没有用后退按钮关闭

Posted

技术标签:

【中文标题】Mvvmcross 8.0.2 Android MvxDialogFragment 没有用后退按钮关闭【英文标题】:Mvvmcross 8.0.2 Android MvxDialogFragment not close with back button 【发布时间】:2021-12-08 07:32:33 【问题描述】:

Mvvmcross 从 7.1.2 升级到 8.0.2 后,我发现 Dialog 不能再用返回按钮关闭。我验证它在 Playground“显示模式”中的行为相同(7.1.2 可以关闭,8.0.2 不能)。这是故意的还是升级中的错误?

我试图捕捉后退按钮事件,但它们都不起作用:

public override void OnCancel(IDialogInterface dialog)
public override void DismissAllowingStateLoss()
public override void Dismiss()
public override void OnDismiss(IDialogInterface dialog)

在 8.0.2 中需要更改任何代码,或者在单击后退按钮时关闭对话框片段的解决方法?

谢谢,

尼克

【问题讨论】:

【参考方案1】:

这似乎是一个错误。您现在需要添加 [MvxDialogFragmentPresentation(Cancelable = true)] 以启用使用后退按钮关闭对话框。文档说明 Cancelable 应为 default to true。

【讨论】:

以上是关于Mvvmcross 8.0.2 Android MvxDialogFragment 没有用后退按钮关闭的主要内容,如果未能解决你的问题,请参考以下文章

MvvmCross Android 片段添加到后台堆栈

在 Xamarin.Android 中通过 MVVMCross 绑定 OxyPlot

MvvmCross 和 Android 上的链接问题

使用逗号作为带有 MvvmCross 的 android EditText 的小数分隔符

交换机上的 mvvmcross 绑定在发布时失败

带有 MvvmCross 的 Xamarin.Android 上的 System.InvalidCastException