ActionBarSherlock:显示并隐藏ActionBar + StatusBar

时间:2013-01-16 20:43:26

标签: hide actionbarsherlock statusbar

我是currentlky试图隐藏并在Fullscreen中显示我的应用程序。 我根据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与通知重叠:

enter image description here

对于什么是错误的任何想法?

1 个答案:

答案 0 :(得分: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);
    }