`
xiaoheliushuiya
  • 浏览: 399823 次
文章分类
社区版块
存档分类
最新评论

PhoneGap 在Android 手机上的全屏(FullScreen)问题

阅读更多

(注:本方法只适用于PhoneGap 0.93或更高版本)

PhoneGap是一个不错的跨多个平台的开发框架,让开发者用来构建跨平台的使用HTML,CSS和JavaScript的移动应用程序。

在Android下使用PhoneGap,通常我们要extends DroidGap,而不是Activity,同时还要加载PhoneGap的jar文件。当我们的应用需要全屏显示时,我们该如何做呢?

在Android程序开发时,我们通过在主Activity对应的java文件中加入:

//全屏(无标题栏和状态栏)
public void setFullscreen() {
     requestWindowFeature(Window.FEATURE_NO_TITLE);
     getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
                    WindowManager.LayoutParams.FLAG_FULLSCREEN);
}
       
//无标题栏
public void setNoTitle() {
     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. 按照原方法设置全屏幕。即

//全屏(无标题栏和状态栏)
public void setFullscreen() {
     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("....");前面调用这个全屏幕函数即可。
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics