为了账号安全,请及时绑定邮箱和手机立即绑定

如何在不使用导航的情况下在 Xamarin 应用程序中打开页面?

如何在不使用导航的情况下在 Xamarin 应用程序中打开页面?

C#
互换的青春 2021-11-07 20:16:58
我有一个 Xamarin Forms 应用程序,它在工具栏上有 2 个按钮。目前我正在使用 FreshMVVM(以及它的导航)。我想加载页面而不将它们放入导航中。我不想在工具栏上有“后退”按钮,也不希望用户返回最后一页。这是我目前推送页面的方式:CoreMethods.PushPageModel<FirstChoicePageModel>();我试图作为模态推送,但这样工具栏按钮在我按下之前不起作用。如果我按下按钮,我应该制作新的导航容器并切换到它们吗?
查看完整描述

2 回答

?
holdtom

TA贡献1805条经验 获得超10个赞

自从我使用 FreshMVVM 已经有一段时间了,但如果我没记错的话,您有两个选择:

  1. 如果你想完全重置导航堆栈,你可以这样做 CoreMethods.PushPageModelWithNewNavigation<FirstChoicePageModel>();

  2. 如果要保留导航堆栈,可以NavigationPage.SetHasBackButton(this, false);在视图后面的代码中设置。

对于这两个选项,可能需要拦截 Android 上的后退按钮。在后面的代码中有一个可覆盖的方法:

protected override bool OnBackButtonPressed()

{

    return true; // prevent Xamarin.Forms from processing back button

}


查看完整回答
反对 回复 2021-11-07
?
斯蒂芬大帝

TA贡献1827条经验 获得超8个赞

如果您想显示一个页面,但又不想导航(更改当前页面),则始终可以使用 Popups。

请参阅此链接https://github.com/rotorgames/Rg.Plugins.Popup


查看完整回答
反对 回复 2021-11-07
  • 2 回答
  • 0 关注
  • 284 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信