SDL android NDK 管理 return 按钮

SDL android NDK managing return button

我正在使用 SDL-2.0.3 和 NDK-r10e,我试图让 return 按钮将应用程序切换到后台,所以我尝试使用功能 SDL_MinimizeWindow() 但它什么都不做!这是一个错误还是我错过了什么?

这是我的代码:

if(event.key.keysym.sym == SDLK_AC_BACK)
    {
            SDL_MinimizeWindow(window);

            SDL_Log("window minimized !\n");
    }

一切正常,按下按钮时我收到日志消息,但 window 未最小化

Android 似乎不支持(在 Android 上几乎没有任何对应于最小化 "window" 的东西,除非你算上完成 Activity ).

SDL_MinimizeWindow 函数如下所示:

void
SDL_MinimizeWindow(SDL_Window * window)
{
    CHECK_WINDOW_MAGIC(window, );

    if (window->flags & SDL_WINDOW_MINIMIZED) {
        return;
    }

    SDL_UpdateFullscreenMode(window, SDL_FALSE);

    if (_this->MinimizeWindow) {
        _this->MinimizeWindow(_this, window);
    }
}

其中 _thisSDL_VideoDevice *,它在运行时设置为指向相应平台的 SDL_VideoDeviceThe Android video driver 仅设置以下 3 个 Window 相关函数:

device->CreateWindow = Android_CreateWindow;
device->SetWindowTitle = Android_SetWindowTitle;
device->DestroyWindow = Android_DestroyWindow;

尝试对 Android 上的 SDL_Window 执行任何其他操作很可能无济于事。

来自 SDL_androidwindow.c:

的几行代码形式的一些进一步信息
window->flags &= ~SDL_WINDOW_RESIZABLE;     /* window is NEVER resizeable */
window->flags |= SDL_WINDOW_FULLSCREEN;     /* window is always fullscreen */