2012-03-13 84 views
14

我正在使用Android。我需要在全屏模式下顯示我的活動,並使用以下代碼完成此操作。android從全屏模式退出

getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, 
        WindowManager.LayoutParams.FLAG_FULLSCREEN); 

現在,它看起來像這樣: - enter image description here

現在我想從這個全模式退出,以便我的活動應該像以前一樣顯示。是這樣的: -

enter image description here

我有其用於完全模式或正常模式之間切換的按鈕,我將一次又一次切換模式。請建議我如何做到這一點。意味着如何從全屏獲得正常的屏幕。

預先感謝您。

+0

是否需要upvote?我認爲它不會 – Praveenkumar 2012-03-14 05:40:15

回答

32

按下面的代碼,我可以隱藏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; 
      } 

     } 
    }); 
} 

試試這個代碼。它幫助你很多。

9

要禁用全屏:

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

要重新啓用全屏:

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

我覺得你的情況,關鍵是重新申請的佈局。

+4

什麼是ActivitiesCurrentContentView在這裏?沒有這個名字的班級! @bbedward – Sri 2015-10-30 07:29:44

+0

這隻隱藏狀態欄 – 2017-02-28 13:34:16

0

從片段附加到活動時,全屏幕模式被複位。最好的辦法是添加代碼

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

在該片段的回調onActivityCreated(佈局ID 是活動的根佈局)。