當初看到這個功能的時候說老實話我也嚇了一跳
沒搞錯吧,手機也要玩全螢幕,如果說一般PC遊戲程式用全螢幕我還相信
因為全螢幕的狀態遊戲程式的效能會比視窗模式還要高上許多
不過Android的確有提供這個功能,就是為了替手機的遊戲程式等提供更乾淨的介面
來看一下這張圖

一個Android應用程式會有兩個不屬於我們佈局檔的東西(圖看不清楚請點開放大)

  1. 第一個是上面紅框圈起來,也就是手機狀態的Bar
  2. 第二個是則是綠框圈起來的部分,是我們應用程式的標題

而要如何讓他們消失呢
可以用一行程式

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

首先用Activity的getWindow()函式得到Window物件
之後用他的setFlag()函式去設定視窗屬性在此用WindowManager.LayoutParams.FLAG_FULLSCREEN
代表我要設定為全螢幕
來看一下效果

唉呀!標題框還在沒消除。那個標題框是Activity的顯示屬姓,所以必須仰賴Activity的requestWindowFeature函式
去對Activity增加顯示效果,在此我使用

requestWindowFeature(Window.FEATURE_NO_TITLE);

這個是Google的遊戲範例,像是Snake、LunarLander都會看到的一行程式,使用Window.FEATURE_NO_TITLE這個參數,作用就是把應用程式的標題給移除。
onCreate的部分程式

@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
requestWindowFeature(Window.FEATURE_NO_TITLE);
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
WindowManager.LayoutParams.FLAG_FULLSCREEN);
setContentView(R.layout.list);
........
}

最後來看一下效果吧
創作者介紹

Frank's Blog

Frank 發表在 痞客邦 PIXNET 留言(0) 人氣()