android从全屏模式退出

Pus*_*tal 14 android layoutparams android-windowmanager

我在Android工作.我需要以全屏模式显示我的活动,我使用以下代码完成此操作.

    getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
                    WindowManager.LayoutParams.FLAG_FULLSCREEN);
Run Code Online (Sandbox Code Playgroud)

现在它看起来像这样: - 在此输入图像描述

现在我想退出这个完整模式,所以我的活动应该像以前一样显示.像这样:-

在此输入图像描述

我有一个按钮,用于在完全模式或正常模式之间切换,我将一次又一次地切换模式.请建议我怎么做这个.意味着如何从全屏获得正常的屏幕.

先感谢您.

Pra*_*mar 40

根据以下代码,我可以隐藏TitleBar您的需求,

Button full;
static int vari = 0;

@Override
public void onCreate(Bundle savedInstanceState) 
{
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);
    full = (Button)findViewById(R.id.fullview);
    full.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View v) {
            // TODO Auto-generated method stub
            if(vari == 0)
            {
                getWindow().clearFlags(WindowManager.LayoutParams.FLAG_FORCE_NOT_FULLSCREEN);
                getWindow().addFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN);
                vari = 1;
            }else 
            {
                getWindow().clearFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN);
                getWindow().addFlags(WindowManager.LayoutParams.FLAG_FORCE_NOT_FULLSCREEN);                 
                vari = 0;
            }

        }
    });
}
Run Code Online (Sandbox Code Playgroud)

试试这个代码.它可以帮到你很多.


bbe*_*ard 12

要禁用全屏:

getWindow().addFlags(WindowManager.LayoutParams.FLAG_FORCE_NOT_FULLSCREEN);
getWindow().clearFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN);
ActivitiesCurrentContentView.requestLayout();
Run Code Online (Sandbox Code Playgroud)

要重新启用全屏:

getWindow().addFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN);
getWindow().clearFlags(WindowManager.LayoutParams.FLAG_FORCE_NOT_FULLSCREEN);
ActivitiesCurrentContentView.requestLayout();
Run Code Online (Sandbox Code Playgroud)

我认为你的案例中的关键是重新请求布局.

  • 什么是ActivitiesCurrentContentView?没有那个名字的班级!@bbedward (6认同)