在自己新建的工程中,执行打印的语句:
glviewSize.x is 0 and glviewSize.y is 1081344000!
visibleSize.x is 0 and visibleSize.y is 1081344000!
origin.x is 0 and origin.y is 0!
viSize.x is 0 and viSize.y is 1081344000!
size.x is 0 and size.y is 1081344000!
screen.width is 0 ,screen.height is 1081344000!
得到的屏幕宽度为0,高手帮忙解答下。
代码如下:
bool AppDelegate::applicationDidFinishLaunching() {
// initialize director
auto director = Director::getInstance();
auto glview = director->getOpenGLView();
glview = GLView::create(“Hello Game”);
director->setOpenGLView(glview);
glview ->setFrameSize(320,480);
glview->setDesignResolutionSize(320,480,kResolutionExactFit);
auto glviewSize = glview->getFrameSize();
CCLog(“glviewSize.x is %d and glviewSize.y is %d!”,glviewSize.width , glviewSize.height);
if(glviewSize.width==0)
{
glview ->setFrameSize(320,480);
}
// turn on display FPS
director->setDisplayStats(true);
// set FPS. the default value is 1.0/60 if you don't call this
director->setAnimationInterval(1.0 / 60);
// create a scene. it's an autorelease object
auto scene = HelloWorld::createScene();
// run
director->runWithScene(scene);
return true;
}
bool HelloWorld::init()
{
//////////////////////////////
// 1. super init first
if ( !Layer::init() )
{
return false;
}
//b2World *world = new b2World(b2Vec2(0,10));
Size visibleSize = Director::getInstance()->getVisibleSize();
Point origin = Director::getInstance()->getVisibleOrigin();
CCLog(“visibleSize.x is %d and visibleSize.y is %d!”,visibleSize.width , visibleSize.height);
CCLog(“origin.x is %d and origin.y is %d!”,origin.x , origin.y);
ScreenSize = Director::sharedDirector()->getVisibleSize();
initWorld();
addGround();
addBird();
scheduleUpdate();
return true;
}
