【问题标题】:Monogame Xamarin android catch Back hardware keyMonogame Xamarin android 抓回硬件密钥
【发布时间】:2014-08-26 11:08:04
【问题描述】:

我正在尝试捕捉后退按键(硬件),以便防止它存在于我的游戏中但显示游戏菜单。

我尝试在我的 AndroidGameActivity 中覆盖 OnBackPressed,但在按下返回时它不会触发。我的游戏存在:(。

所以我挖掘得更深一点,发现可以在 Game 对象的 Window 成员上使用 SetOnKeyListener。 我现在在我的侦听器类中有一个 OnKey 方法,该方法在按键时触发。 对按键做出反应很好,但它仍然退出我的应用程序,因为它并没有真正覆盖它,它只是一个监听器。 它仍然进入 AndroidGameActivity OnKeyDown 并检查它是否“返回”然后退出应用程序。

我看到了 [https://github.com/dineshkummarc/MonoGame-2.5.1.0-0/blob/master/MonoGame.Framework/Android/AndroidGameWindow.cs 已经有一个 OnKeyDown 覆盖。如果按下返回,您可以看到它退出应用程序。

那么当点击后退硬件键时如何防止它退出呢? 我应该覆盖 OnDestroy 并检查游戏状态吗?

欢迎任何帮助。

【问题讨论】:

    标签: c# android input xamarin monogame


    【解决方案1】:

    我认为后退按钮不会自动退出游戏。仔细检查您是否没有在 Game::Update 方法中手动退出。很多 XNA 教程都有那个代码,所以它有可能在你不注意的情况下偷偷溜进来。

    寻找这样的东西:

    protected override void Update(GameTime gameTime)
    {
        // Allows the game to exit
        if (GamePad.GetState(PlayerIndex.One).Buttons.Back == 
            ButtonState.Pressed)
            this.Exit();
    

    【讨论】:

      猜你喜欢
      • 2017-07-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-07-24
      • 2018-04-05
      • 1970-01-01
      相关资源
      最近更新 更多