我正在为 kindle fire 开发一个游戏,游戏总是在隐藏栏的情况下运行。
只有当用户进入暂停菜单时,该栏才会出现,我只希望该栏出现在游戏中。
但似乎当栏出现时 GlSurfaceView.getHeight() 从 600 变为 580,并且我的游戏调整大小,但我不希望这种行为,
我只希望游戏栏出现在游戏中并且我的游戏不动,我已经尝试过 GlSurfaceView.setMinimumHeight(600);
但是kindle根本忽略了这一点。
这就是我的游戏始终运行的方式:
当我激活栏时,会发生这种情况:
而不是这个:
你知道避免这种情况的方法吗?
谢谢!
要创建 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);
}
});
}