我有一个 Android 游戏,里面有 NativeActivity 和一些 Java 代码。我的应用全屏显示,但现在我需要显示状态栏并使我的应用正确显示。
我知道如何显示状态栏,我尝试了两种方法:
- Android.xml:在应用程序中使用 Theme.Holo 而不是 Theme.Holo.Fullscreen:应用程序的主题
- 在 onCreate() 为应用程序窗口设置 FLAG_FORCE_NOT_FULLSCREEN
两种方法都给出了相同的结果。显示状态栏,但在其下方显示 EGL 视图。表示绘制 EGL 视图,然后在其上绘制状态栏,部分 EGL 视图被剪裁且不可见。
有没有办法让它只在可见区域而不是状态栏下绘制 EGL 视图?
我试图修复它,但发现 ANativeWindow 是预定义的(?),当我创建 EGL 视图时,它的大小与 ANativeWindow 相同。所以我不能改变 EGL 视图的大小(没有这样的 API)。也许我们有办法改变 ANativeWindow 的大小?或者一些活动设置/标志的技巧可以让它很好地工作?