android Exit from full screen mode

前端 未结 3 518
独厮守ぢ
独厮守ぢ 2020-12-03 08:26

I am working in Android. I need to show my activity in Full screen mode, and i did this using following code.

    getWindow().setFlags(WindowManager.LayoutPar         


        
相关标签:
3条回答
  • 2020-12-03 08:41

    From ICS when the Fragment is attached to the Activity, the FULL Screen mode is reseted. The best approach is to add the code

    getActivity().getWindow().addFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN); getActivity().findViewById(R.id.root).setSystemUiVisibility(View.STATUS_BAR_HIDDEN);

    in the callback onActivityCreated of the fragment(layout id root is the root layout of the Activity).

    0 讨论(0)
  • 2020-12-03 08:44

    To disable full screen:

    getWindow().addFlags(WindowManager.LayoutParams.FLAG_FORCE_NOT_FULLSCREEN);
    getWindow().clearFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN);
    ActivitiesCurrentContentView.requestLayout();
    

    To re-enable full screen:

    getWindow().addFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN);
    getWindow().clearFlags(WindowManager.LayoutParams.FLAG_FORCE_NOT_FULLSCREEN);
    ActivitiesCurrentContentView.requestLayout();
    

    I think the key in your case is re-requesting the layout.

    0 讨论(0)
  • 2020-12-03 08:50

    As per below code, i can hide the TitleBar by your needs,

    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;
                }
    
            }
        });
    }
    

    Try this code. It helps you lot.

    0 讨论(0)
提交回复
热议问题