4

我创建了一个具有 UrhoSharp 表面的 Activity;

SDLSurface surface = UrhoSurface.CreateSurface(this, typeof(UrhoLayer), appOptions);

现在后退按钮没有响应。我尝试覆盖 onBackPressed(),但是当我按下后退按钮时不会调用此函数。如何使后退按钮起作用?

4

1 回答 1

2

我通过在 DispatchKeyEvent 中捕获后退按钮来解决此问题。不是一个非常令人满意的解决方案,但它有效:

    public override bool DispatchKeyEvent(KeyEvent e)
    {
        if (e.Action == KeyEventActions.Up && e.KeyCode == Keycode.Back)
        {
            OnBackPressed();
            return true;
        }
        if (!UrhoSurface.DispatchKeyEvent(e))
            return false;
        return base.DispatchKeyEvent(e);
    }
于 2016-07-01T08:17:56.607 回答