(注:本方法只适用于PhoneGap 0.93或更高版本)
PhoneGap是一个不错的跨多个平台的开发框架,让开发者用来构建跨平台的使用HTML,CSS和JavaScript的移动应用程序。
在Android下使用PhoneGap,通常我们要extends DroidGap,而不是Activity,同时还要加载PhoneGap的jar文件。当我们的应用需要全屏显示时,我们该如何做呢?
在Android程序开发时,我们通过在主Activity对应的java文件中加入:
//全屏(无标题栏和状态栏)
publicvoidsetFullscreen() {
requestWindowFeature(Window.FEATURE_NO_TITLE);
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
WindowManager.LayoutParams.FLAG_FULLSCREEN);
}
//无标题栏
publicvoidsetNoTitle() {
requestWindowFeature(Window.FEATURE_NO_TITLE);
}
然后在onCreate()方法中Activity.setContentView();前调用才会生效。
也可在Manifest.xml文件中的Application中加入:
android:theme="@android:style/Theme.Black.NoTitleBar.Fullscreen"
在PhoneGap中,我们在启动加载网页文件时可能不会用到Activity.setContentView();,而是使用DroidGap.LoadURL("....");来加载页面。 那么我们如何设置全屏显示呢?(无标题栏效果DroidGap是支持的)
由于在DroidGap中没有提供相关的方法,因此可以采用如下方法“
1. 清除FLAG_FORCE_NOT_FULLSCREEN这个FLAG,这个在DroidGap中是支持的。
2. 按照原方法设置全屏幕。即
//全屏(无标题栏和状态栏)
publicvoidsetFullscreen() {
getWindow().clearFlags(WindowManager.LayoutParams.FLAG_FORCE_NOT_FULLSCREEN);//清除FLAG
requestWindowFeature(Window.FEATURE_NO_TITLE);
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
WindowManager.LayoutParams.FLAG_FULLSCREEN);
}
然后,在DroidGap.LoadURL("....");前面调用这个全屏幕函数即可。