【问题标题】:Back Button Pressed is not firing按下后退按钮未触发
【发布时间】:2021-08-04 08:18:17
【问题描述】:

我正在尝试实现一个在用户按下后退按钮时将被调用的函数。 完全按照我在 UWP 中的预期工作,但问题在于 android。

在 android 我有两个后退按钮, 一个在顶部 Navigation(我们称之为 navbackbutton ),另一个在底部,三个 android 按钮“背景应用程序,Home 和返回按钮(android backbutton),

Android 后退按钮正在触发 onBackpressed 覆盖方法,但 navbackbutton 没有,它只是将我带到上一页。

我不明白为什么会这样以及如何解决它。

【问题讨论】:

  • 如果你能包含一些代码 sn-p 或者你试图通过代码做的事情会很棒
  • 问题不是我想要做的,问题 wshy 覆盖 onbackbuttonpresesd 没有被调用,我可以包含我认为不是问题的代码,因为在调试时它不会停止断点。这就是我知道 func 没有被调用的方式。但它让我回到了以前,所以我认为它可能是从其他地方开火

标签: xamarin xamarin.forms


【解决方案1】:

Page.OnBackButtonPressed 只能通过 Android 上的硬件后退按钮触发。

您可以在MainActivity 中覆盖OnOptionsItemSelected 以挂钩导航返回按钮事件,请参考here

另一种方式是自定义NavigationPage.TitleView(带有返回按钮和标题标签的布局)替换默认导航栏,然后就可以获取返回按钮事件了。

【讨论】:

  • 您好,您还有其他问题吗?如果有帮助,请考虑将其标记为答案。
猜你喜欢
  • 2013-10-11
  • 1970-01-01
  • 2012-04-18
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-05-09
  • 1970-01-01
相关资源
最近更新 更多