解決PhoneGap在Android手機上的全屏(FullScreen)問題

  (注:本方法只適用於PhoneGap 0.93或更高版本)

          PhoneGap是一個不錯的跨多個平臺的開發框架,讓開發者用來構建跨平臺的使用HTML,CSS和JavaScript的移動應用程序。

          在Android下使用PhoneGap,通常我們要extends DroidGap,而不是Activity,同時還要加載PhoneGap的jar文件。當我們的應用需要全屏顯示時,我們該如何做呢?

          在Android程序開發時,我們通過在主Activity對應的java文件中加入:

  1. //全屏(無標題欄和狀態欄)  
  2. public void setFullscreen() {  
  3.      requestWindowFeature(Window.FEATURE_NO_TITLE);  
  4.      getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,  
  5.                     WindowManager.LayoutParams.FLAG_FULLSCREEN);  
  6. }  
  7.          
  8. //無標題欄  
  9. public void setNoTitle() {  
  10.      requestWindowFeature(Window.FEATURE_NO_TITLE);  
  11. }   

          然後在onCreate()方法中Activity.setContentView();前調用纔會生效。

 

          也可在Manifest.xml文件中的Application中加入:

 

  1. android:theme="@android:style/Theme.Black.NoTitleBar.Fullscreen"  


          在PhoneGap中,我們在啓動加載網頁文件時可能不會用到Activity.setContentView();,而是使用DroidGap.LoadURL("....");來加載頁面。 那麼我們如何設置全屏顯示呢?(無標題欄效果DroidGap是支持的)

 

          由於在DroidGap中沒有提供相關的方法,因此可以採用如下方法“

          1. 清除FLAG_FORCE_NOT_FULLSCREEN這個FLAG,這個在DroidGap中是支持的。

          2. 按照原方法設置全屏幕。即

 

  1. //全屏(無標題欄和狀態欄)  
  2. public void setFullscreen() {  
  3.      getWindow().clearFlags(WindowManager.LayoutParams.FLAG_FORCE_NOT_FULLSCREEN);//清除FLAG  
  4.      requestWindowFeature(Window.FEATURE_NO_TITLE);  
  5.      getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,  
  6.                     WindowManager.LayoutParams.FLAG_FULLSCREEN);  
  7. }  


          然後,在DroidGap.LoadURL("....");前面調用這個全屏幕函數即可。

 

(原文地址:http://blog.csdn.net/webdisk008/article/details/6701967)

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章