CocosCreator H5 判断手机横竖屏

JavaScript027

CocosCreator H5 判断手机横竖屏,第1张

在CocosCreator中,如果使用 cc.view.getFrameSize() 或 cc.view.getCanvasSize() 的长宽比只能判断cc.view是横竖屏状态,如果在编译的时候设备方向设定为 Landscape 时,无论手机是横竖屏,通过 cc.view.getFrameSize() 或 cc.view.getCanvasSize() 获取的长宽比都是宽屏状态。

这时我们要判断手机横竖屏的话,可以使用 window.orientation 的角度是否为正负90来判断是否横屏。

android修改项目根目录 proj.androidAndroidManifest.xml 文件中的android:screenOrientation属性值,portrait 为竖屏,landscape为横屏

Windows直接用cocos引擎接口中的GLView::createWithRect方法指定窗口大小,需要注意的是,该方法在android环境下会报错,并导致程序崩溃,所以我们需要在代码里面这么写pre t=codel=cssbool AppDelegate::applicationDidFinishLaunching() {

// initialize director

auto director = Director::getInstance()

auto glview = director-getOpenGLView()

if(!glview) {

ifdef WIN32

glview = GLView::createWithRect(My Game, cocos2d::Rect(0,0,640,960))

else

glview = GLView::create(My Game)

endif // WIN32

director-setOpenGLView(glview)

}

}