gpt4 book ai didi

java - Kindle Fire 和 GlSurfaceView.getHeight()

转载 作者:行者123 更新时间:2023-11-30 04:11:45 25 4
gpt4 key购买 nike

我正在为 kindle fire 开发游戏,游戏运行时总是隐藏条。

只有当用户进入暂停菜单时,该栏才会出现,我只希望该栏显示在游戏中。

但似乎当条形显示 GlSurfaceView.getHeight() 从 600 变为 580 时,我的游戏调整大小,但我不希望出现这种行为,

我只是希望在游戏中显示栏并且我的游戏不会移动,我已经尝试过 GlSurfaceView.setMinimumHeight(600);

但 kindle 会忽略这一点。

我的游戏总是这样运行的:enter image description here

当我激活栏时会发生这种情况:

enter image description here

而不是这个:

enter image description here

你知道避免这种情况的方法吗?

谢谢!

要创建 GlSurfaceView,我执行以下操作:

OnCreate() {

s_activity.m_view = new GameGLSurfaceView(s_activity.getApplication(), true, pixelSize,depthSize, stencilSize);

}

public GameGLSurfaceView(Context context, boolean translucent,int pixelSize, int depth, int stencil)
{
super(context);
mRenderer = new GameRenderer(context, this);
setRenderer(mRenderer);

}

隐藏和显示栏我使用这个功能

private static final int AMAZON_FLAG_NOSOFTKEYS = 0x80000000;
private static final int FLAG_SUPER_FULLSCREEN = AMAZON_FLAG_NOSOFTKEYS | WindowManager.LayoutParams.FLAG_FULLSCREEN;

public static void toggleKindleBar(final int toDo)
{
if( s_activity != null)
s_activity.runOnUiThread(new Runnable()
{
public void run()
{
s_activity.getWindow().clearFlags( toDo!=1? WindowManager.LayoutParams.FLAG_FORCE_NOT_FULLSCREEN : FLAG_SUPER_FULLSCREEN);
s_activity.getWindow().addFlags( toDo!=1? FLAG_SUPER_FULLSCREEN:WindowManager.LayoutParams.FLAG_FULLSCREEN);

}
});
}

最佳答案

可能的解决方案:

  1. 在 Activity 的 onCreate() 方法上试试这个:

    getWindow().setFlags(WindowManager.LayoutParams.FLAG_LAYOUT_NO_LIMITS, WindowManager.LayoutParams.FLAG_LAYOUT_NO_LIMITS);

    请注意,根据我的经验,在这段代码运行时使用 kindle fire 时,某些 View 会出现一些奇怪的问题,因此即使它可以工作,也请进行一些广泛的测试。

  2. 尝试将 list 设置为具有一些用于 configChanges 的标志,但我没有测试它并且我不再有 kindle fire 了。

关于java - Kindle Fire 和 GlSurfaceView.getHeight(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10758028/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com