0

我正在尝试以全屏方式隐藏和显示我的应用程序。我根据 Eclipse 模板启动了一个新的 FullScreenActivity。

这是我用来显示/隐藏 ActionBar + NotificationBar 的代码

public void hide() {
    if ((mFlags & FLAG_FULLSCREEN) != 0) {
        mActivity.getSupportActionBar().hide();
        mActivity.getWindow().setFlags(
                WindowManager.LayoutParams.FLAG_FULLSCREEN,
                WindowManager.LayoutParams.FLAG_FULLSCREEN);

    }
    mOnVisibilityChangeListener.onVisibilityChange(false);
    mVisible = false;
}

public void show() {
    if ((mFlags & FLAG_FULLSCREEN) != 0) {
        mActivity.getSupportActionBar().show();         
        mActivity.getWindow().setFlags(0,
                WindowManager.LayoutParams.FLAG_FULLSCREEN);            
    }
    mOnVisibilityChangeListener.onVisibilityChange(true);
    mVisible = true;
}

它有点工作,但我的大问题是 ActionBar 与通知重叠:

在此处输入图像描述

知道什么是错的吗?

4

1 回答 1

0

自我回答:

我不得不删除模板中自动生成的这些行:

    if ((mFlags & FLAG_LAYOUT_IN_SCREEN_OLDER_DEVICES) == 0) {
        mActivity.getWindow().setFlags(
                WindowManager.LayoutParams.FLAG_LAYOUT_IN_SCREEN
                        | WindowManager.LayoutParams.FLAG_LAYOUT_NO_LIMITS,
                WindowManager.LayoutParams.FLAG_LAYOUT_IN_SCREEN
                        | WindowManager.LayoutParams.FLAG_LAYOUT_NO_LIMITS);
    }
于 2013-01-16T21:06:39.397 回答