这两天遇到一个奇葩的问题。
现象:
在Android上游戏运行时始终屏幕上显示的内容会多出一部分。
director->getOpenGLView()->setDesignResolutionSize(640,960,ResolutionPolicy::FIXED_WIDTH);
这句会没有效果,我这只了一张尺寸为640 * 960的图片,在显示时在手机竖屏时的右侧会有黑边(华为P6),图片并没有占满宽度。
终于解决了:
找到的出现问题的代码,为什么还没有去探寻。
有问题的代码
boolAppDelegate::applicationDidFinishLaunching(){
// initialize director
auto director = Director::getInstance();
auto glview = director->getOpenGLView();
if(!glview) {
glview = GLViewImpl::createWithRect(“Setting”, Rect(0, 0, 640,960));
director->setOpenGLView(glview);
director->getOpenGLView()->setDesignResolutionSize(640, 960, ResolutionPolicy::FIXED_WIDTH);
}
没问题的代码
boolAppDelegate::applicationDidFinishLaunching(){
// initialize director
auto director = Director::getInstance();
auto glview = director->getOpenGLView();
if(!glview) {
glview = GLViewImpl::createWithRect(“Setting”, Rect(0, 0, 640,960));
director->setOpenGLView(glview);
}
director->getOpenGLView()->setDesignResolutionSize(640,960,ResolutionPolicy::FIXED_WIDTH);
不知大家在有没有遇到过类似的问题,也可以一起探讨一下为什么会出现这种情况,在Win32下,两种代码都是正常的。