简体   繁体   English

如何使活动不全屏显示

[英]How to make an activity not full screen

I use this code to make an activity full screen 我使用此代码使活动全屏显示

requestWindowFeature(Window.FEATURE_NO_TITLE);
        getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
                WindowManager.LayoutParams.FLAG_FULLSCREEN);
        setContentView(R.layout.activity_read);

How to I make the activity not full screen again, by a press of a button?? 如何通过按一下按钮使活动再次不全屏显示?

If u change the height and width replace the values u want .8 and .85 in this code 如果您更改高度和宽度,请在此代码中替换您想要的值.8和.85

    DisplayMetrics dm=new DisplayMetrics();
    getWindowManager().getDefaultDisplay().getMetrics(dm);
    int width=dm.widthPixels;
    int height=dm.heightPixels;
    getWindow().setLayout((int)(width*.8),(int)(height*.85));

Note: the values not exceed 1 注意:值不超过1

use this functions to go/hide Immersive Full-Screen Mode 使用此功能可进入/隐藏沉浸式全屏模式

 View mDecorView = getWindow().getDecorView();

 private void hideSystemUI() {
    mDecorView.setSystemUiVisibility(
            View.SYSTEM_UI_FLAG_LAYOUT_STABLE
                    | View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION
                    | View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN
                    | View.SYSTEM_UI_FLAG_HIDE_NAVIGATION // hide nav bar
                    | View.SYSTEM_UI_FLAG_FULLSCREEN // hide status bar
                    | View.SYSTEM_UI_FLAG_IMMERSIVE);
}

    private void showSystemUI() {
    mDecorView.setSystemUiVisibility(
            View.SYSTEM_UI_FLAG_LAYOUT_STABLE
                    | View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION
                    | View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN);
}

more here: https://developer.android.com/training/system-ui/immersive.html 此处更多内容: https : //developer.android.com/training/system-ui/immersive.html

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM